实际广告代替Admob中的测试广告

时间:2015-12-31 10:15:39

标签: android

我在我的应用中看到了实际的广告,而不是测试广告。查看图片和代码。enter image description here

AdView mAdView = (AdView) findViewById(R.id.adView);
    //AdRequest adRequest = new AdRequest.Builder().build();
    AdRequest request = new AdRequest.Builder()
            .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)        // All emulators
            .addTestDevice("32F40C185F4A9214").addTestDevice("31B340D6693D6C01").addTestDevice("759E79391A5A27C3")
            .addTestDevice("aa6705960ab37b0d")
            .build();
    mAdView.loadAd(request);

3 个答案:

答案 0 :(得分:3)

你确定这4个设备ID中有一个有效的设备ID吗?

请检查您的日志,Admob会在其中打印您的设备ID。将相同的设备ID放在addTestDevice();

答案 1 :(得分:1)

您的设备ID可能有误。

像这样添加测试设备ID,因此您不需要在设备更换时更换它。

.addTestDevice(getDeviceId(context))

getDeviceId()和md5()

的代码
public static String getDeviceId(Context context)
{
    String android_id = Settings.Secure.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID);
    String deviceId = md5(android_id).toUpperCase();
    //return deviceId;
    return "0";
}

public static final String md5(final String s) {
    try {
        // Create MD5 Hash
        MessageDigest digest = java.security.MessageDigest
                .getInstance("MD5");
        digest.update(s.getBytes());
        byte messageDigest[] = digest.digest();

        // Create Hex String
        StringBuffer hexString = new StringBuffer();
        for (int i = 0; i < messageDigest.length; i++) {
            String h = Integer.toHexString(0xFF & messageDigest[i]);
            while (h.length() < 2)
                h = "0" + h;
            hexString.append(h);
        }
        return hexString.toString();

    } catch (NoSuchAlgorithmException e) {
        e.printStackTrace();
    }
    return "";
}

答案 2 :(得分:0)

来自androidcookbook admob tutorial

  

将AdMob广告整合到您的应用中时,建议您使用测试模式。在测试模式测试中,始终会返回广告。基于每个设备启用测试模式。要为设备启用测试模式,请首先请求广告,然后在LogCat中查找如下所示的行:

     

要在模拟器上获取测试广告,请使用AdManager.setTestDevices ...

     

获得设备ID后,您可以通过调用主要活动AdManager.setTestDevices来启用测试模式:

     

AdManager.setTestDevices(new String [] {AdManager.TEST_EMULATOR,&#34; E83D20734F72FB3108F104ABC0FFC738&#34;,//电话ID   });

比较这两个屏幕截图,它让我看到您的程序已正确配置为测试模式。