好吧,这很尴尬,但是我一直在尝试加载非页内广告,但它却无法加载,我也不明白为什么连logcat也什么都没说。我在两个活动中使用了相同的代码,显然我在这里使用测试器。因此,当我单击RelativeLayout时,它会显示广告。问题在于它在测试人员的一项活动中完美显示,而在另一项活动中却没有。
这是我尝试过的。
mInterstitialAd = new InterstitialAd(this);
mInterstitialAd.setAdUnitId("ad-id");
mInterstitialAd.loadAd(new AdRequest.Builder().build());
layoutSaved.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (mInterstitialAd.isLoaded()) {
mInterstitialAd.show();
} else {
Log.d(TAG, "The interstitial wasn't loaded yet.");
}
}
});
尝试使用AdListener敬酒一条消息以检查其是否已加载,以及广告是否已加载但无法打开。
PS :值得注意的是,我在logcat中遇到此错误,但一切运行正常E/RecyclerView: No adapter attached; skipping layout
,我尝试了solution 1和solution 2这些解决方案我认为这不会引起任何问题(或者会吗?)
答案 0 :(得分:0)
导致此问题的原因很多,但请确保使用最新版本库版本 15.0.1
还将AdListener设置为以下代码
interstitialAd.setAdListener(new AdListener() {
@Override
public void onAdClosed() {
interstitialAd.loadAd(adRequest);
super.onAdClosed();
}
@Override
public void onAdFailedToLoad(int i) {
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
interstitialAd.loadAd(adRequest);
}
}, 60000);
super.onAdFailedToLoad(i);
}
});
要在下面显示广告使用代码
if (interstitialAd != null && interstitialAd.isLoaded()) {
interstitialAd.show();
} else {
assert interstitialAd != null;
interstitialAd.loadAd(adRequest);
}
答案 1 :(得分:0)
将RecyclerView
layout_height
设置为"wrap_content"
后,我不敢相信这会起作用。
这就是我在xml文件中所做的。
<android.support.v7.widget.RecyclerView
android:id="@+id/recyclerView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/toolbar">
我正在使用布局点击侦听器,并且此布局包装了RecyclerView
和其他视图。由于设置为match_parent
,因此版面点击未被识别为是因为recyclerview正在填充版面,尽管它是空的。我相信这可能是问题所在。希望它对以后的人有所帮助:)