【发布时间】:2016-08-02 09:29:20
【问题描述】:
我正在开发一个新应用程序并使用 Admob 来制作插页式广告。我在 1-2 个月前对广告进行了编码,一切都很棒。这些天我快要发布了,但我注意到大概 2 周后广告就再也没有展示过了。所以我决定调试。一切似乎都很好,没有例外,但是 Admob SDK 总是报告未加载插页式广告,尽管 SDK 调用了回调 onAdLoaded。
这是我的配置,我省略了无关的东西:
buildscript {
...
dependencies {
...
classpath 'com.google.gms:google-services:3.0.0'
}
}
dependencies {
compile "com.android.support:support-v4:18.0.+"
compile "com.google.android.gms:play-services-analytics:9.0.2"
compile 'com.google.android.gms:play-services-ads:9.0.2'
}
apply plugin: 'com.google.gms.google-services'
这是有奇怪行为的代码 sn-p:
private com.google.android.gms.ads.InterstitialAd mInterstitialAd;
public void loadInterstitial() {
mInterstitialAd = new InterstitialAd(context);
mInterstitialAd.setAdUnitId(adUnitId);
mInterstitialAd.setAdListener(new AdListener()
{
@Override
public void onAdLoaded() {
super.onAdLoaded();
Log.d(TAG, "is loaded = " + mInterstitialAd.isLoaded()); // FALSE!!!
}
}
}
public void showInterstitial() {
if(mInterstitialAd.isLoaded()) { // ALWAYS FALSE!!!
mInterstitialAd.show();
} else {
loadInterstitial(); // FAILED TO LOAD AD with error code = 1
}
}
当我调用showInterstitial 时,在我调用loadInterstitial 之后,我可以看到onAdLoaded 已被调用,检查是否加载了插页式广告总是返回false,并且loadInterstitial方法被再次调用,现在 Admob SDK 给我一个错误,它无法加载广告,错误代码 = 1。
这已经在多台设备上进行了测试,并且没有对与广告或 Google Play 服务库相关的项目进行任何更改,它只是停止工作。
您知道可能是什么问题,或者我可以做些什么来更成功地调试这些错误?
非常感谢。
【问题讨论】:
标签: android admob google-play-services interstitial