質問

エミュレータのIMEIを設定できる他のSymbian SDKにも興味があります。

役に立ちましたか?

解決

エミュレータはIMEI '000000000000000'をハードコードしています。 whatを使用したいものに置き換え、コードの実行を続けます。

Symbian C ++:

    TPlpVariantMachineId imei;
    PlpVariant::GetMachineIdL(imei); 
    imei.Copy(_L("123456789012345"));

S60用Python(PyS60):

    import sysinfo
    my_imei = sysinfo.imei()
    my_imei = u"123456789012345"

他のヒント

この種のことに対する私の一般的なアプローチは、ソフトウェアで行うです。

  1. IMEIフェッチコードを1つのグローバルにアクセス可能な関数に配置し、この関数をIMEIフェッチにのみ使用します。
  2. #ifdef __WINS __ をC ++コードで使用して、エミュレータに返すハードコーディングされたIMEIで選択的にコンパイルできます。 Javaでは、おそらく他の手段(たとえば、返されたIMEIがエミュレーターで固定された奇妙な値である場合)によってエミュレーターにいることを確認し、それに応じて行動することができます。
  3. さらに一歩進んで、ダイナミックIMEIを作成できます。これを行うと、異なるIMEIでコードをテストすることがはるかに簡単になることがわかります。

実際に試したことはありませんが、最善の推測は次のとおりです。

エミュレータには、次の場合を除き、適切なテレフォニー実装がありません。

  • 赤外線/ usb /シリアル経由で実際の電話にリンクします。この場合、エミュレーターテレフォニーコンポーネントは、ATコマンドを使用して電話をパイロットするための構成が必要になります(電話がSymbian電話でない場合でも)。これにより、電話をかけたり、SMS / MMSを送受信したりできますが、IMEIは変更できません。

  • SIMTSYモジュールを使用します。これは、構成ファイルを使用してテレフォニーイベントをシミュレートするコンポーネントです。 SMS / MMSを送信するふりをして、電話を受けているふりをすることができます...実際には、どのような種類のネットワークトラフィックも作成しません。 IMEIは設定ファイルにあると思いますが、エミュレータを再起動せずにIMEIを適切に変更できるとは思いません。 SIMTSYがSymbianの外部で使用されるのを見たことがないので、サードパーティの開発者がSIMTSYを使用できるかどうかわかりません。ただし、今後2年以内に他のオペレーティングシステムとともにオープンソース化する必要があります。

SDK自体のビルド方法が、ビルド時マクロを使用して、エミュレーターのテレフォニーフレームワークのほとんどを無効にする可能性もあります。 http://forum.nokia.com

を確認する必要があります。
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top