Admob直播广告未展示,同时正在展示测试广告。实时广告根本没有展示,我不知道我错过了什么。
这是代码。
String.java XML
<!-- Insert Id admob -->
<string name="BannerAd_unit_id">cca-app-pub-1154915214031679/2100011458</string>
<string name="InterstitialAd_unit_id">ca-app-pub-1154915214031679/9049914448</string>
MainGame.Java Class
this.BANNER_AD_UNIT_ID = getResources().getString(R.string.BannerAd_unit_id);
showBanner();
screen java.class
public void showBanner() {
//banner ad
if (BANNER_AD_UNIT_ID.length() > 0) {
// Create an ad.
adView = new AdView(this);
adView.setAdSize(AdSize.BANNER);
adView.setAdUnitId(BANNER_AD_UNIT_ID);
//make ad visible on bottom of screen
RelativeLayout.LayoutParams params1 = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
params1.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
params1.addRule(RelativeLayout.CENTER_HORIZONTAL);
adView.setLayoutParams(params1);
layout.addView(adView);
// Create an ad request. Check logcat output for the hashed device ID to
// get test ads on a physical device.
AdRequest adRequest = new AdRequest.Builder()
//.addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
//.addTestDevice("C01834A0B4A8FA4C03A0E09605F43819")//GalaxyS4*/
.build();
// Start loading the ad in the background.
adView.loadAd(adRequest);
}
}
如果我删除评论&#34; .addTestDevice&#34;然后测试广告正在显示,如果我发表评论,那么实时广告就不会显示。我不知道发生了什么,我们将不胜感激任何帮助。
答案 0 :(得分:2)
如果您没有收到真正的广告,但正在接收“测试广告”,那么实施应该没问题。
如果您刚刚创建了广告帐户,则需要几个小时才能显示真实广告,有时可能无法展示广告。
将adListener设置为您的adView,然后查看您的回复内容。它可能是ERROR_CODE_NO_FILL
,或者它可能会为您提供其他提示来解决问题。
答案 1 :(得分:0)
确保您已使用付款明细更新了AdMob(为此转到“付款”部分)。
检查您的AdMob信息中心以查看广告状态,以检查它们是否处于活动状态。
验证您使用了正确的广告单元ID。
更新信息后,最多可能需要24小时才能验证您的信息。验证后,它们将启用您的广告投放。您会收到一封电子邮件通知,说明您的广告正在投放。
答案 2 :(得分:0)
如果测试广告运行正常,则说明您的实施是正确的,但是您需要在admob帐户中填写“付款”选项。填写完该表格后,您将收到一封有关确认付款细节的电子邮件,并显示一条消息,指示是否您的信息已被admob小组接受,如果是,则将显示实时广告。但是请记住,广告最初不会展示。批准后也要花费一些时间。
以下是错误代码的代码段,以查找出问题所在
mAdView = (com.google.android.gms.ads.AdView) findViewById(R.id.adView);
mAdView.setAdListener(new com.google.android.gms.ads.AdListener() {
@Override
public void onAdLoaded() {
// Code to be executed when an ad finishes loading.
Toast.makeText(HomeActivity.this, "onAdLoaded", Toast.LENGTH_SHORT).show();
}
@Override
public void onAdFailedToLoad(int errorCode) {
if(errorCode==AdRequest.ERROR_CODE_INTERNAL_ERROR)
Toast.makeText(HomeActivity.this, "onAdFailedToLoad", Toast.LENGTH_SHORT).show();
// Code to be executed when an ad request fails.
}
@Override
public void onAdOpened() {
Toast.makeText(HomeActivity.this, "onAdOpened", Toast.LENGTH_SHORT).show();
}
@Override
public void onAdLeftApplication() {
Toast.makeText(HomeActivity.this, "onAdLeftApplication", Toast.LENGTH_SHORT).show();
}
@Override
public void onAdClosed() {
Toast.makeText(HomeActivity.this, "onAdClosed", Toast.LENGTH_SHORT).show();
}
})
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
Get the error code: