如何以编程方式获取Admob的设备ID?

时间:2011-03-09 17:47:46

标签: android device admob

我有多个设备,我可能会有更多,并且不想逐个添加它们。有人知道Admob使用的ID吗?

3 个答案:

答案 0 :(得分:7)

String aid = Settings.Secure.getString(getContext().getContentResolver(), "android_id");

Object obj = null;
try {
    ((MessageDigest) (obj = MessageDigest.getInstance("MD5"))).update(
                                   aid.getBytes(), 0, aid.length());

    obj = String.format("%032X", new Object[] { new BigInteger(1,
                                   ((MessageDigest) obj).digest()) });
} catch (NoSuchAlgorithmException localNoSuchAlgorithmException) {
    obj = aid.substring(0, 32);
}

我希望这会对你有帮助;)

答案 1 :(得分:1)

我试过了,它给了我ESN号码的Hex值。这不是AdMob使用的数字。

在请求广告时,在Dalvic调试监视器日志中会显示要使用的号码。

您也可以参考以下页面(大约一半): http://code.google.com/mobile/ads/docs/android/intermediate.html

答案 2 :(得分:-1)

嗨Note Down我的回答,如果你想获得设备ID, 您可以使用我在下面使用的TelephonyManager

String device_id=null;
TelephonyManager telemngr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
device_id=telemngr.getDeviceId();

您还需要向清单添加以下权限:

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