1

以下のコードでAndroid IDを取得します。

DeviceID = Secure.getString(this.getContentResolver(),
                    Secure.ANDROID_ID);

ただし、更新のたびに変更されます。それを取得するのは間違った方法ですか、それとも私が使用できる別のものはありますか?

4

3 に答える 3

0

リンクのみの回答は通常お勧めできませんが、この記事はさまざまな API レベルについて非常に詳細であり、関連しているため、この場合の代替手段はありません。

これを処理する正しい方法については、ドキュメントを参照してください (Google によると):

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

于 2016-02-03T15:00:30.743 に答える
-2

残念ながら、あなたの要件を満たすものはありません。

Android デバイスの一意の識別子に関しては、さまざまなオプションがありますが、どれも 100% 動作することを保証するものではありません。そして、それらのほとんどを取得するには、ユーザーに厄介な許可を要求する必要があります。

2 つのオプションを提案できます。

  1. Google 広告 ID の使用 - デバイスごとに一意であり、ユーザーが手動でリセットした場合にのみ変更されます。それを抽出するために必要な追加のアクセス許可はありません。
  2. デバイスごとに一意のキーを自分で生成し (UUID などを使用)、デバイスに保存できます (共有設定、ファイル、データベースなど)。
于 2016-02-03T15:04:49.920 に答える
-3

代わりに を使用してくださいhardwareID。それほど変更しないでください...

試してみるコードは次のとおりです。

/**
 * Returns the embedded <i>hardwareID</i>
 * @param context which {@link Context} to use
 * @return the hardwareID
 */
public static String getHardwareId(Context context) {
    return Settings.Secure.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID);
}
于 2016-02-03T15:02:12.040 に答える