19

現在、Androidデバイスの識別子としてMACアドレスを使用しています。

WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
WifiInfo wInfo = wifiManager.getConnectionInfo();
String mac = wInfo.getMacAddress();

macただし、一部のユーザーのデバイスではが空であることがわかりました。なぜそれが空になるのか、私は少し混乱しています。

理由がわかれば最高です!

それ以外の場合は、Androidデバイスを識別するための代替手段を提供できますか?

4

2 に答える 2

13

に基づいて、Androidモバイルを一意に識別できますimei

TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
telephonyManager.getDeviceId();

AndroidManifest.xmlに権限を追加します。

<uses-permission android:name="android.permission.READ_PHONE_STATE"/>

エミュレーターでは、おそらく0000...のような値を取得します。デバイスでチェックして、デバイスIDを取得します。

于 2013-02-15T17:21:35.547 に答える
7

Androidデバイスに固有の何かを見つけるための最善の策は、そのシリアル番号にアクセスすることです。これを行う方法については他にもいくつかの投稿がありますが、最も閲覧されている投稿は次のとおりです。

Androidデバイスのシリアル番号を見つける方法は?

于 2013-02-15T17:07:05.383 に答える