如何在 webview Back press 中使用插页式广告?

How to use interstitial ad with webview Back press?

问题是 InterstitialAd 是否按预期工作 比如:backpress -> ad show -> webview go back 但如果广告没有显示整个应用程序关闭,webview 不会返回。

我的代码:

    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (event.getAction() == KeyEvent.ACTION_DOWN) {
            if (keyCode == KeyEvent.KEYCODE_BACK) {
                if (webview.canGoBack()) {
                    webview.goBack();
                    mInterstitialAd.show(MainActivity.this);
                    Log.d("---AdMob", "show");
                } else {
                    finish();
                }
                return true;
            }

        }
        return super.onKeyDown(keyCode, event);
    }

首先处理插页式回调。
在 AdDismissed 回调中,通过检查导航 webview:
if (webview.canGoBack()) webview.goBack();

然后像这样跟随backpress:
BackPress > 检查是否已加载插页式广告
如果已加载,则显示广告(网络视图导航将在广告关闭时处理)
如果未加载,将 webview 导航到上一页。