RewardedVideoAd被否决了。新的选择是什么?
void loadAds(){
RewardedVideoAd mRewardedVideoAd;
mRewardedVideoAd.loadAd(rewarded_id, new AdRequest.Builder().build());
mRewardedVideoAd = MobileAds.getRewardedVideoAdInstance(this);
mRewardedVideoAd.setRewardedVideoAdListener(new RewardedVideoAdListener() {
@Override
public void onRewardedVideoAdLoaded() {
AppUtils.showLog("REWARDED", "onRewardedVideoAdLoaded");
}
.....
.....
}发布于 2020-09-20 02:49:04
这是实现新RewardVideoAds的新方法。是通过这个官方网站发现的。
加载ad
import com.google.android.gms.ads.rewarded.RewardedAd;
public class MainActivity extends Activity {
private RewardedAd rewardedAd;
@Override
protected void onCreate(Bundle savedInstanceState) {
...
rewardedAd = new RewardedAd(this,
"ca-app-pub-3940256099942544/5224354917");
RewardedAdLoadCallback adLoadCallback = new RewardedAdLoadCallback() {
@Override
public void onRewardedAdLoaded() {
// Ad successfully loaded.
}
@Override
public void onRewardedAdFailedToLoad(LoadAdError adError) {
// Ad failed to load.
}
};
rewardedAd.loadAd(new AdRequest.Builder().build(), adLoadCallback);
}
}展示广告
myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (rewardedAd.isLoaded()) {
Activity activityContext = MainActivity.this
RewardedAdCallback adCallback = new RewardedAdCallback() {
@Override
public void onRewardedAdOpened() {
// Ad opened.
}
@Override
public void onRewardedAdClosed() {
// Ad closed.
}
@Override
public void onUserEarnedReward(@NonNull RewardItem reward) {
// User earned reward.
}
@Override
public void onRewardedAdFailedToShow(AdError adError) {
// Ad failed to display.
}
};
rewardedAd.show(activityContext, adCallback);
} else {
Log.d("TAG", "The rewarded ad wasn't loaded yet.");
}
}
});使用RewardedAdCallback预加载下一个奖励的ad
public RewardedAd createAndLoadRewardedAd() {
RewardedAd rewardedAd = new RewardedAd(this,
"ca-app-pub-3940256099942544/5224354917");
RewardedAdLoadCallback adLoadCallback = new RewardedAdLoadCallback() {
@Override
public void onRewardedAdLoaded() {
// Ad successfully loaded.
}
@Override
public void onRewardedAdFailedToLoad(LoadAdError adError) {
// Ad failed to load.
}
};
rewardedAd.loadAd(new AdRequest.Builder().build(), adLoadCallback);
return rewardedAd;
}
@Override
public void onRewardedAdClosed() {
this.rewardedAd = createAndLoadRewardedAd();
}发布于 2020-09-19 14:15:28
现在应该使用一个新的类RewardedAd。见这里的Google文档。
https://stackoverflow.com/questions/63886939
复制相似问题