2011-06-23 4 views
1

異なるシステムにエミュレータ(sdk)をインストールし、すべてが1台のサーバに接続されています。すべてのエミュレータは、同じコードとリソースで構築されています。 これらのエミュレータは、テスト目的で一意に識別する必要があります。私はシステムのユーザー名を取得しようとしましたが、空の文字列kwです。Androidエミュレータを一意に識別する

実際のデバイスでは、IMEI番号を取得できます。しかし、エミュレータの場合、方法は存在しますか?私はそれが奇妙な疑いであることを知っています。これについていくつかのヒントを教えてください。事前に

おかげで、 ジョー

答えて

2

は実際にAndroidデバイスは常に(例えば、タブレットにはない)IMEIを持っていません。識別のためにUUIDを使用する場合はblog entryをご覧ください。

+0

はい、あなたは正しいです。私はタブレットの実際のデバイスで私のアプリをテストしませんでした。エミュレータを一意に識別する方法はありますか?エミュレータの場合、ANDROID_IDはnullでもかまいません。 –

+0

リンクに記載されているとおり、UUID.randomUUID()。toString()でランダムなUID文字列を作成し、RandomAccessFileに保存する方法です(ただしSharedPreferencesに保存することをお勧めします)。とにかく、使用するための完全なクラスコードがあります。 –

+0

ありがとうm1shk4、私はそれを試してみる..、これは私の問題を解決する必要があります。 –

0

あなたは管理された環境を持っています。生成されたUUIDを含む各エミュレータにファイルを作成できます。そしてあなたのアプリケーションでそのUUIDを読んでそれをサーバーに送ります。

また、アプリケーションは、そのようなUUIDファイルが存在するかどうかをチェックし、それが作成されていない場合はチェックすることができます。この場合、エミュレータの事前設定は必要ありません。

これは、ANDROID_IDなどの手法に頼らずに問題を解決するはずです。このアプローチを実際のデバイスにまで拡張することもできます。

+0

ありがとうinazaruk .. –

関連する問題