微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Android Admob rewardedAd未显示奖励广告

如何解决Android Admob rewardedAd未显示奖励广告

我正在使用admob rewardedAd,并且一切正常,但有时不显示视频。有时,它会显示静态广告,就像是插页广告一样。不会有问题,但是当这种情况发生并且用户关闭应用程序时,不会触发onUserEarnedReward。有没有办法强迫它始终展示奖励视频广告?

这是我加载并准备广告回调的代码

    rewardedAd = new RewardedAd(this,rewardKey);
    RewardedAdLoadCallback adLoadCallback = new RewardedAdLoadCallback() {
        @Override
        public void onRewardedAdLoaded() { }

        @Override
        public void onRewardedAdFailedToLoad(int errorCode) {
            rewardedAd = new RewardedAd(getApplicationContext(),rewardKey);
            rewardedAd.loadAd(new AdRequest.Builder().build(),this);
        }
    };
    adCallback = new RewardedAdCallback() {
        @Override
        public void onRewardedAdOpened() { }

        @Override
        public void onRewardedAdClosed() {
            rewardedAd = new RewardedAd(getApplicationContext(),adLoadCallback);
        }

        @Override
        public void onUserEarnedReward(@NonNull RewardItem reward) {
            /* 
            ...
            Give rewards to the user 
            ...
            */
            rewardedAd = new RewardedAd(getApplicationContext(),adLoadCallback);
        }

        @Override
        public void onRewardedAdFailedToShow(int errorCode) {
            Toast.makeText(getApplicationContext(),getString(R.string.ad_error),Toast.LENGTH_LONG).show();
        }
    };
    rewardedAd.loadAd(new AdRequest.Builder().build(),adLoadCallback);

然后我将其显示为:

rewardedAd.show(this,adCallback);

解决方法

从您的帖子中看来,问题并非一直存在。尝试不要从此代码中创建太多新的rewardedAd实例,而您称它为三遍,应该足以使rewardedAd = new RewardedAd(getApplicationContext(),rewardKey);

,

根据documentation,没有诸如静态奖励广告之类的东西:

AdMob奖励的广告可能是点击下载的视频广告,且带有结尾 视频结束时显示的即时贴或交互式广告(例如 可播放的广告或调查。

您确定没有展示诸如调查之类的交互式广告,用户必须回答问题才能获得奖励?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。