(MoPub 广告网络)尝试调用接口方法 "onAdFailed" 空指针异常

(MoPub Ad Network) Attempt to invoke interface method "onAdFailed" Null Pointer Exception

我们已经使用 Mopub 6 个月来通过我们的应用获利。我们正在使用一种机制,如果 returns 没有原生广告的广告,我们会从网络请求横幅广告。

最近我们看到一个关于横幅广告错误代码的空指针异常。由于网络无法加载广告,因此出现空指针异常。

logcat 从 crashlytics 读取:

com.mopub.mobileads.MoPubFullscreen.lambda$preRender[=11=] (MoPubFullscreen.java:182)
com.mopub.mobileads.-$$Lambda$MoPubFullscreenH3zkNFnaPQ4PqCgAa8VbWGmgJs.run (-.java:2)
android.os.Handler.handleCallback (Handler.java:883)
android.os.Handler.dispatchMessage (Handler.java:100)  

MoPub 库:5.13.0

我的代码:

    public void onNativeFail(NativeErrorCode errorCode) {
        if (errorCode != NativeErrorCode.CONNECTION_ERROR) {
                if (errorCode == NativeErrorCode.NETWORK_NO_FILL) {
                    CreateMoPubBannerAd(frameLayout);
                } else {
                    HandleAds(frameLayout); // Loads local ads created by ourselves
                }
            
        }
    }

    public void CreateMoPubBannerAd(FrameLayout frameLayout) {

        if(frameLayout == null)
        { frameLayout = findViewById(R.id.adContainerView_button);}

        if(moPubView == null)
        { moPubView = findViewById(R.id.mopub_banner); }

        moPubView.setLocalExtras(localExtras);
        moPubView.setAdUnitId(getString(R.string.twitter_banner_ad_unit_id));
        moPubView.loadAd();

        FrameLayout finalFrameLayout = frameLayout;
        moPubView.setBannerAdListener(new MoPubView.BannerAdListener() {
            @Override
            public void onBannerLoaded(@NonNull MoPubView banner) {
                if(adappName != null)
                adappName.setVisibility(View.GONE);
                moPubView.setVisibility(View.VISIBLE);
            }

            @Override
            public void onBannerFailed(MoPubView banner, MoPubErrorCode errorCode) {
HandleAds(frameLayout); // Loads local ads created by ourselves}

            @Override
            public void onBannerClicked(MoPubView banner) { }

            @Override
            public void onBannerExpanded(MoPubView banner) {}

            @Override
            public void onBannerCollapsed(MoPubView banner) {}
        });
    }

感谢您阅读本文,如有任何帮助,我们将不胜感激

此问题在 MoPub SDK 5.13.1 中仍然存在。 我发现这里已经跟踪到了这个问题,会在以后的版本中修复,供大家参考。 https://github.com/mopub/mopub-android-sdk/issues/413