下面是我的代码。 此代码仅显示间隙广告仅第一项。 我想在我的回收视图上显示广告的每一个项目。 当用户点击任何项目,广告应该出现。
public void onBindViewHolder(@nonnull CustomHolder holder,int位置){
final String htmlfile = htmlFile[position];
holder.textView.setText(title[position]);
MobileAds.initialize(context, "ca-app-pub-3940256099942544~3347511713");
final InterstitialAd mInterstitialAd = new InterstitialAd(context);
mInterstitialAd.setAdUnitId("ca-app-pub-3940256099942544/1033173712");
mInterstitialAd.loadAd(new AdRequest.Builder().build());
mInterstitialAd.setAdListener(new AdListener() {
@Override
public void onAdClosed() {
mInterstitialAd.loadAd(new AdRequest.Builder().build());
Intent intent = new Intent(context,StudyActivity.class);
intent.putExtra("file",htmlfile);
context.startActivity(intent);
((CategoryActivity)context).finish();
}
});
holder.linearLayout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(mInterstitialAd.isLoaded()){
mInterstitialAd.show();
}else{
Intent intent = new Intent(context,StudyActivity.class);
intent.putExtra("file",htmlfile);
context.startActivity(intent);
((CategoryActivity)context).finish();
}
}
});
}
您不必在onAdClosed方法中再次加载
mInterstitialAd.loadAd(new AdRequest.Builder().build());//REMOVE THIS
您不必为每个项目初始化,将以下代码移动到您的activity
MobileAds.initialize(context, "ca-app-pub-3940256099942544~3347511713");
其他一切都应该正常。
快乐的编码!