我在我的应用程序中添加了admob广告, 通过以下代码找到admob所需的设备ID
String android_id = Settings.Secure.getString(this.getContentResolver(), Settings.Secure.ANDROID_ID);
device_id = md5(android_id).toUpperCase();
public static String md5(String s) {
try {
MessageDigest digest = java.security.MessageDigest.getInstance("MD5");
digest.update(s.getBytes());
byte messageDigest[] = digest.digest();
StringBuffer hexString = new StringBuffer();
for (int i=0; i<messageDigest.length; i++)
hexString.append(Integer.toHexString(0xFF & messageDigest[i]));
return hexString.toString();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
return "";
}
问题在于它在某些设备上展示广告,但在某些设备上展示了测试广告。我哪里错了?请帮忙
答案 0 :(得分:3)
addTestDevice
用于展示针对development.so的Admob测试广告,从您的addTestDevice
中移除adRequest
,即。将您的adRequest
设为
AdRequest adRequest = new AdRequest.Builder().build();
adView.loadAd(adRequest);
如果你想获得用于测试的设备ID,那么请看这个
How can I get device ID for Admob
然后在addTestDevice
中添加adRequest
作为
AdRequest adRequest = new AdRequest.Builder()
.addTestDevice(device_id)
.build();
adView.loadAd(adRequest);
答案 1 :(得分:1)
官方教程页面上提到了链接 - https://developers.google.com/mobile-ads-sdk/docs/admob/android/banner 这
为方便起见,logcat将打印设备的MD5哈希ID,例如: 使用AdRequest.Builder.addTestDevice(&#34; AC98C820A50B4AD8A2106EDE96FB87D4&#34;)在此设备上投放测试广告。表示您的设备ID将同样显示。以上只是一个示例id。
答案 2 :(得分:0)
只需转到Log Cat并搜索“广告”即可。 然后你会发现你的设备就像使用它一样。
AdRequest request = new AdRequest.Builder()
.addTestDevice("Device ID")
.build();