Androidで一意のデバイスハードウェアIDを取得するにはどうすればいいですか? [重複] 質問する

Androidで一意のデバイスハードウェアIDを取得するにはどうすればいいですか? [重複] 質問する

電話のリセットや OS アップデートを実行しても変更できない Android の一意のデバイス ID を取得するにはどうすればよいですか?

ベストアンサー1

更新日: 2019年11月19日

以下の回答は、現在では関連性がありません。

答えを探している人は、以下のリンク先のドキュメントを参照してください。

https://developer.android.com/training/articles/ユーザーデータID


古い回答- 今は関係ありません。下のリンクでこのブログをチェックしてください

http://android-developers.blogspot.in/2011/03/identifying-app-installations.html

アンドロイドID

import android.provider.Settings.Secure;

private String android_id = Secure.getString(getContext().getContentResolver(),
                                                    Secure.ANDROID_ID); 

上記はリンク@からのものです固有の Android デバイス ID はありますか?

具体的には、Settings.Secure.ANDROID_ID です。これは、デバイスが最初に起動したときに生成され、保存される 64 ビットの量です。デバイスが消去されるとリセットされます

ANDROID_IDは、固有のデバイス識別子として適しているようです。欠点もあります。まず、2.2 (“Froyo”) より前の Android リリースでは 100% 信頼できるわけではありません。また、大手メーカーの人気端末では、すべてのインスタンスが同じ ANDROID_ID を持つというバグが少なくとも 1 つ広く確認されています。

以下の解決策は良いものではありません。デバイスのワイプ(「工場出荷時設定へのリセット」)後も値は保持されるため、顧客の1人がデバイスをワイプして他の人に渡すと、厄介なミスを犯す可能性があります。

デバイスのIMEI番号は以下から取得できます

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

http://developer.android.com/reference/android/telephony/TelephonyManager.html#getDeviceId%28%29

これを追加するとマニフェストになります

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

おすすめ記事