admob Interstitalad进入循环-android

admob Interstitalad进入循环-android,android,admob,interstitial,Android,Admob,Interstitial,我在我的应用程序中使用google admob Interstitalad,但我有一个问题。当我在手机上安装我的应用程序时,它正在运行成功。但当我把它安装在平板电脑设备上时,中间层调用activity onDestroy。当我关闭广告时,onCreate再次被调用。这将以循环的形式继续。当显示广告时,我如何防止转到onDestroy 创建时: // Create an ad. interstitialAd = new InterstitialAd(this, "--------"); // S

我在我的应用程序中使用google admob Interstitalad,但我有一个问题。当我在手机上安装我的应用程序时,它正在运行成功。但当我把它安装在平板电脑设备上时,中间层调用activity onDestroy。当我关闭广告时,onCreate再次被调用。这将以循环的形式继续。当显示广告时,我如何防止转到onDestroy

创建时:

// Create an ad.
interstitialAd = new InterstitialAd(this, "--------");

// Set the AdListener.
interstitialAd.setAdListener(this);
loadAd();
方法:

private void loadAd(){
    AdRequest adRequest = new AdRequest();
    //adRequest.addTestDevice(AdRequest.TEST_EMULATOR);
    interstitialAd.loadAd(adRequest);
}

@Override
public void onReceiveAd(Ad ad) {
    if (ad == interstitialAd) {
        if (interstitialAd.isReady()) {
            interstitialAd.show();
          }
    }
}

不要调用AdListsner#onReceive中的interstituralad.show()

这是问题的核心,因为每次创建活动时都会加载一个广告。在Android框架破坏它以保留内存后,每当你回到它时,它都会被创建。这可能在您离开某个活动时发生,例如显示InterstitalAD活动时。 它还产生了极其糟糕的用户体验


相反,在应用程序中的自然断点处调用interstitalAd.show(),但前提是interstitalAd.isReady()。

由于某种原因,我遇到了相同的问题,在关闭interstitalAd时,活动会再次通过onCreate