2017-07-26 10 views
0

アンドロイドで現在のデバイスを一意に識別するStringを取得する方法をご希望です。 これは前に尋ねられましたが、すべての回答が同じであることがわかります:ANDROID_ID定数を使用する。事は、それが非難され、また安全でないということです。他の可能性はありますか?アンドロイドでユニークなデバイスIDを取得

ありがとうございました。

+0

どの環境/言語ですか? – nageeb

+1

これは推奨されていないようです... https://developer.android.com/reference/android/provider/Settings.Secure.html#ANDROID_ID – litelite

+2

あなたは1)IDが一意に永遠に縛られているかどうかを検討する必要がありますハードウェアのその特定の部分。 2)工場出荷時のリセットでリセットされたID(あなたの身元を売ることなくあなたの電話を誰かに売ることができます)、3)SIMカードを交換したり、新しい人。 4)特定のアプリケーションの特定のインストールに関連するID。 5)など。 –

答えて

1

理想的な方法はありません。最良の方法は、あなた自身で1つを生成してから、アプリがインストールされるまでそれを再利用することです。あなたは

String uniqueId = UUID.randomUUID().toString(); 

が初めてアプリが起動し、それを生成し使用し、さらに使用するために共有好みでそれを保存することができます。これは、すべての新規インストール後に変更されますので、あなたにもアプリのインストールを追跡することができます。

+0

'UUID.randomUUID()'は一意のIDを与えません。それは毎回ランダムな価値を与えます。 –

+0

正確には、アプリの最初の公開時に生成されます。 –

+0

私はrealmデータベースのプライマリキーに同じものを使用しました。しかし、固有のデバイスIDとして使用することは賢明ではないと思います。アプリをアンインストールしてから再インストールした後には取得できないためです。ユニークなデバイスIDとしては機能しません。 –

0

はAndroidデバイスを識別するための一意のIDを取得するにはいくつかの方法を説明し、次のポスト..

https://medium.com/@ssaurel/how-to-retrieve-an-unique-id-to-identify-android-devices-c40080e04fa4

を参照し、推奨されているかを知るために一意の識別子 のためのAndroid開発者のベストプラクティスを参照し、そうではありません。

https://developer.android.com/training/articles/user-data-ids.html

+1

これは、将来有効ではない外部サイトへのリンクに依存していない場合には良い答えとなります。リンク先のページの内容の一部を引用することを検討してください。リンクが崩壊してもこのページは有効なままです。 –

+0

@DaleWilsonご意見ありがとうございます。私は本当にここで本当の話をしたいと思っていますが、多くの方法と多くの見解が記述されています。私はdeveloper.androidリンクが決して無効ではないと考えています。 – Shareefoo

関連する問題