AdMob插页式广告未加载

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AdMob插页式广告未加载相关的知识,希望对你有一定的参考价值。

我正试图在活动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));
    }
}

当我单击Button进入第二个活动时,它会记录The interstitial wasn't loaded yet.。我在这里缺少什么?

答案

你忘记添加,

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
        }
另一答案

你可以试试这个。

声明全局变量:

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代码不起作用。试试这个肯定会起作用。

谢谢你希望这会对你有所帮助。

以上是关于AdMob插页式广告未加载的主要内容,如果未能解决你的问题,请参考以下文章

RecycleViewerAdapter 未完美显示 admob 插页式广告

正在等待Admob插页式广告加载

cocos2d-x / firebase / admob无法加载插页式广告

Admob 和 facebook 插页式广告在同一个活动中

Google Admob Ad 在加载插页式广告时崩溃应用

AdMob Native Ads Express 未收到测试广告