0

当我尝试加载广告时,有时会显示错误代码 0

rewardedAd = new RewardedAd(getActivity(), "ca-app-pub-3940256099942544/5224354917"); 
RewardedAdLoadCallback adLoadCallback = new RewardedAdLoadCallback() {
        @Override
        public void onRewardedAdLoaded() {
            // Ad successfully loaded
        }

        @Override
        public void onRewardedAdFailedToLoad(int errorCode) {
            // Ad failed to load, I got error code = 0 here
        }
    };

在这个线程中,作者说:

错误代码 0 : ERROR_CODE_INTERNAL_ERROR 这表示内部发生了一些事情;例如,从广告服务器收到无效响应。

新创建的广告单元最多可能需要 2 小时才能生效(启动时间)。来自新创建的广告单元的任何广告请求也会收到错误代码 0 以响应广告请求,直到它们准备好投放实时广告。

我认为这不是问题,因为我只使用了测试广告 ID。

任何帮助,将不胜感激

4

1 回答 1

0

以下是在应用中正确实施奖励广告的步骤

private RewardedVideoAd mRewardedVideoAd;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
     mRewardedVideoAd = MobileAds.getRewardedVideoAdInstance(this);
     loadRewardedVideoAd();
}

public void loadRewardedVideoAd() {

    mRewardedVideoAd.setRewardedVideoAdListener(new RewardedVideoAdListener() {
        @Override
        public void onRewardedVideoAdLoaded() {

        }

        @Override
        public void onRewardedVideoAdOpened() {
        }

        @Override
        public void onRewardedVideoStarted() {
        }

        @Override
        public void onRewardedVideoAdClosed() {
          loadRewardedVideoAd();
        }

        @Override
        public void onRewarded(RewardItem rewardItem) {
        }

        @Override
        public void onRewardedVideoAdLeftApplication() {
        }

        @Override
        public void onRewardedVideoAdFailedToLoad(int i) {

        }

        @Override
        public void onRewardedVideoCompleted() {


        }
    });

    mRewardedVideoAd.loadAd("ca-app-pub-3940256099942544/5224354917",
            new AdRequest.Builder().build());
}

public void showRewardedAds() {
    if (mRewardedVideoAd != null && mRewardedVideoAd.isLoaded()) {
        mRewardedVideoAd.show();
    }  else {

      loadRewardedVideoAd();
    }
}

 @Override
public void onDestroy() {
    if (mRewardedVideoAd != null) {
        mRewardedVideoAd.destroy(this);
    }
    super.onDestroy();
}
于 2020-03-16T06:31:47.757 回答