0

はい、同様の質問をすべて調べましたが、適切な答えが見つかりませんでした。AdMob のテスト デバイスを設定するには、デバイス ID が必要です。私の最初のアプローチ(セキュリティ上の理由により一部の数字が変更されました):

  final TelephonyManager tm = (TelephonyManager) c
            .getSystemService(Context.TELEPHONY_SERVICE);
   Log.w("ID", tm.getDeviceId());

結果:358948074051795

ドキュメントには次のように記載されています。たとえば、GSM の IMEI や CDMA 電話の MEID または ESN などの一意のデバイス ID を返します。デバイス ID が利用できない場合は null を返します。

私の2番目のアプローチ:

   Log.w("ID_1",
            Secure.getString(c.getContentResolver(), Secure.ANDROID_ID));

結果:98ade639139bf376

説明:デバイスの最初の起動時にランダムに生成される 64 ビットの数値 (16 進文字列として) であり、デバイスの存続期間中は一定のままです

質問: 違いは何ですか? AdMob のテストにはどれを使用すればよいですか?

4

2 に答える 2

1

1.コード

Settings.Secure#ANDROID_ID returns the Android ID as an unique 64-bit hex string

import android.provider.Settings.Secure;

String deviceId = Secure.getString(this.getContentResolver(),Secure.ANDROID_ID);

Toast.makeText(this, deviceId, Toast.LENGTH_SHORT).show();

2.マニフェスト

マニフェスト ファイルにuses-permissionを追加する

<uses-permission android:name="android.permission.READ_PHONE_STATE" />
于 2014-04-01T08:01:57.387 に答える
1

違いは両方の方法の説明に書いてありますが・・・使った方がデバイス自体を識別してくれるので信頼性は高い
と思います。IMEI numberデバイスがデフォルト設定を復元する必要がある場合はどうなりますか?
2番目のオプションを選択した場合、新しい番号が生成されないかどうかを確認する必要があります.
IMEI の詳細については、http: //en.wikipedia.org/wiki/International_Mobile_Equipment_Identityを参照してください。

于 2013-08-14T15:16:54.117 に答える