各デバイスを一意に識別するために、IMEI (または CDMA デバイスの場合は ESN 番号) を使用したいと思います。プログラムでこれにアクセスするにはどうすればよいでしょうか?
ベストアンサー1
電話したいandroid.telephony.TelephonyManager.getDeviceId()
。
これにより、デバイスを一意に識別する文字列 (GSM の場合は IMEI、CDMA の場合は MEID) が返されます。
では以下の権限が必要になりますAndroidManifest.xml
:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
これを行うためには。
そうは言っても、これを行う際には注意が必要です。アプリケーションがテレフォニー スタックにアクセスする理由をユーザーが疑問に思うだけでなく、ユーザーが新しいデバイスを入手した場合にデータの移行が困難になる可能性があります。
更新:以下のコメントで述べたように、これはユーザーを認証する安全な方法ではなく、プライバシーの問題を引き起こします。推奨されません。代わりに、Google+ ログイン API摩擦のないログイン システムを実装したい場合。
のAndroid バックアップ APIユーザーが携帯電話をリセットしたとき (または新しいデバイスを購入したとき) に文字列のバンドルを永続化するための軽量な方法が必要な場合にも利用できます。