事前にロードするリワードだと仕方がないかもしれないけど
admobの管理画面で表示と読込の乖離が気になってしまうので
すこしでもと、リワードを表示させるアクティビティを再描画する際、すでに広告を読み込んでいれば、loadAdしないようにしてみましたが、onResume後のチェックでisLoadedとなっても、.show()で真っ黒のリワードアクティビティがスタートしてしまった。。
@Override
protected void onResume() {
if( rewardedVideoAd != null ) {
rewardedVideoAd.resume( this );
}
super.onResume();
loadRewardedVideoAd();
}
void loadRewardedVideoAd(){
if( rewardedVideoAd.isLoaded() ){
reward.setClickable( true );
reward.setEnabled( true );
// onResume後にここに入ってボタンで開始しても.show()で真っ黒
}else{
rewardedVideoAd.loadAd( getString( R.string.reword_ad_code ),
new AdRequest.Builder().addTestDevice( getResources().getString( R.string.test_device_id ) ).build() );
}
}
ログをみるとonRewardedVideoStartedは呼ばれているので
admobは表示されてるみたいですが、コンテンツが表示されない。。
onResume後はisLoaded()がtrueでも再度loadAdすればもちろん問題ないけど、どうなんだろう。。