众所周知,谷歌要求我们在开发应用时使用测试设备并测试广告单元ID。但是,我想要知道如果我能存在的话 看到真实的广告,因为我担心在发布之前更改代码和广告ID后不会显示任何广告。我已成功看到测试广告,然后我更改了代码和广告ID,然后将我的应用程序提交给beta测试,但测试人员说没有广告显示,是正常的,还是我在代码中犯了一些错误或广告单元ID。 谢谢你的帮助!
以下是我的广告相关代码,我更改了广告ID
mAdView = (AdView) findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
答案 0 :(得分:1)
您甚至可以使用实际广告单元ID进行开发,但在制作广告请求时,您的测试设备应添加到测试设备列表中。
如果它是您正在使用的有效广告单元ID,则可以确保在发布应用时广告会显示。此外,您还可以检查Adsense信息中心是否获得了广告单元的点击量。
如果您想确定无疑,可以尝试在其他设备上安装apk,对其进行测试,然后在看到广告时将其发布。
答案 1 :(得分:0)
您可以使用AdListener并监控其未展示广告的原因。请记住,如果您创建了新的广告单元,则需要花费一些时间或几个小时来为其安排实际广告。如果您正在展示测试广告并且您拥有有效的广告单元ID,并且您的应用未违反任何政策,那么您就可以开始使用(如果您的应用存在政策问题,您将通过电子邮件发送)。广告将在可用时显示。
AdView adView = (AdView) findViewById(R.id.adView);
AdRequest adRequest1 = new AdRequest.Builder().build();
adView.loadAd(adRequest1);
adView.setAdListener(new AdListener() {
@Override
public void onAdLoaded() {
// Code to be executed when an ad finishes loading.
Log.i("Ads", "onAdLoaded");
}
@Override
public void onAdFailedToLoad(int errorCode) {
// Code to be executed when an ad request fails.
switch (errorCode){
case AdRequest.ERROR_CODE_INTERNAL_ERROR:
Toast.makeText(PlayListsActivity.this,"onAdFailedToLoad banner ERROR_CODE_INTERNAL_ERROR",Toast.LENGTH_SHORT).show();
break;
case AdRequest.ERROR_CODE_INVALID_REQUEST:
Toast.makeText(PlayListsActivity.this,"onAdFailedToLoad banner ERROR_CODE_INVALID_REQUEST",Toast.LENGTH_SHORT).show();
break;
case AdRequest.ERROR_CODE_NETWORK_ERROR:
Toast.makeText(PlayListsActivity.this,"onAdFailedToLoad banner ERROR_CODE_NETWORK_ERROR",Toast.LENGTH_SHORT).show();
break;
case AdRequest.ERROR_CODE_NO_FILL:
Toast.makeText(PlayListsActivity.this,"onAdFailedToLoad banner ERROR_CODE_NO_FILL",Toast.LENGTH_SHORT).show();
break;
}
Log.i("Ads", "onAdFailedToLoad");
}
@Override
public void onAdOpened() {
// Code to be executed when an ad opens an overlay that
// covers the screen.
Log.i("Ads", "onAdOpened");
}
@Override
public void onAdLeftApplication() {
// Code to be executed when the user has left the app.
Log.i("Ads", "onAdLeftApplication");
}
@Override
public void onAdClosed() {
// Code to be executed when when the user is about to return
// to the app after tapping on an ad.
Log.i("Ads", "onAdClosed");
}
});