我正试图在我的activity Two中实现一个间隙广告。但我的广告由于某种原因无法加载。我是java新手,并尝试遵循AdMob指令,但我仍然不确定我错过了什么,以及为什么广告单元没有被加载。
这是我的活动One
Button goFree;
private InterstitialAd mInterstitialAd;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_one);
mInterstitialAd = new InterstitialAd(this);
mInterstitialAd.setAdUnitId("ca-app-pub-3940256099942544/xxxxxxxx");
mInterstitialAd.loadAd(new AdRequest.Builder().addTestDevice(AdRequest.DEVICE_ID_EMULATOR).build());
mInterstitialAd.setAdListener(new AdListener() {
@Override
public void onAdClosed() {
startActivity(new Intent(One.this, Two.class));
mInterstitialAd.loadAd(new AdRequest.Builder().addTestDevice(AdRequest.DEVICE_ID_EMULATOR).build());
}
});
Button goFree = (Button) findViewById(R.id.goFree);
goFree.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startTwo();
}
});
}
public void startTwo() {
if (mInterstitialAd.isLoaded()) {
mInterstitialAd.show();
} else {
Log.d("TAG", "The interstitial wasn't loaded yet.");
startActivity(new Intent(One.this, Two.class));
}
}当我单击按钮转到第二个活动时,它会记录The interstitial wasn't loaded yet.。我错过了什么?
发布于 2018-09-05 00:22:46
你忘了加,
MobileAds.initialize(LoginActivity.this,
"ca-app-pub-3940256099942544~3347511713");看看这个:-
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_one);
MobileAds.initialize(LoginActivity.this,
"ca-app-pub-3940256099942544~3347511713");
//rest of code here
}发布于 2018-09-05 00:30:11
你可以试试这个。
声明全局变量:
InterstitialAd mInterstitialAd;以下代码在oncreate中使用或根据需要使用:
mInterstitialAd = new InterstitialAd(this);
// set the ad unit ID
mInterstitialAd.setAdUnitId(getString(R.string.interstitial_full_screen));
AdRequest adRequest = new AdRequest.Builder().addTestDevice(AdRequest.DEVICE_ID_EMULATOR).addTestDevice("5ADF8BFD1F030BF7ED41A52D88C63B9C").build();
mInterstitialAd.loadAd(adRequest);
mInterstitialAd.setAdListener(new AdListener() {
public void onAdLoaded() {
showInterstitial();
}
@Override
public void onAdClosed() {
}
@Override
public void onAdFailedToLoad(int errorCode) {
}
@Override
public void onAdLeftApplication() {
}
@Override
public void onAdOpened() {
}
});按下面的方法显示。
private void showInterstitial() {
if (mInterstitialAd.isLoaded()) {
mInterstitialAd.show();
}
}使用此id一段时间:
<string name="interstitial_full_screen">ca-app-pub-2330175674430713/9772460509</string>有时你的admob代码不工作。试着这样做,确保它会工作。
谢谢,希望这对你有帮助。
https://stackoverflow.com/questions/52169702
复制相似问题