Admob Interstitial 广告显示错误构建请求 URL
Admob Interstitial ad showing Error building request URL
我最近实施了 admob 插页式广告,并从方法 onAdFailedToLoad() 获得 exception/error 作为 构建请求错误 URL。,而且我的广告是未显示
.
我的代码:
InterstitialAd interstitialAd;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
InterstitialAd interstitialAd = new InterstitialAd(MainActivity.this);
interstitialAd.setAdUnitId(KEY);
MobileAds.initialize(MainActivity.this, new OnInitializationCompleteListener() {
@Override
public void onInitializationComplete(InitializationStatus initializationStatus) {
Log.e("app","MobileAds onInitializationComplete");
}
});
interstitialAd.loadAd(new AdRequest.Builder().build());
interstitialAd.setAdListener(new AdListener(){
@Override
public void onAdLoaded() {
Log.e("app","ad loaded");
}
@Override
public void onAdFailedToLoad(LoadAdError loadAdError) {
Log.e("app","ad failedToLoad: "+loadAdError.getMessage()); //error/exception here
}
});
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(interstitialAd.isLoaded()) {
interstitialAd.show();
Log.e("app","ad loaded");
}
else Log.e("app","ad not loaded yet");
}
}
我已经在 Manifest.xml
中正确注册了我的 ID
<application>
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="@string/KEY"/>
</application>
遵循相同的准则shown in here
确保您在调用 InterstitialAd 时使用来自 AdMob 的正确测试广告 ID。这与您的 App ID 不同,它后面有一个斜线和一个数字。
为了测试,
使用 ca-app-pub-3940256099942544/1033173712 这是文档在撰写本文时给出的测试 ID。
我也遇到了类似的问题,检查后发现我输入的单元ID不正确。
我注意到在这些情况下会出现此错误:
- 当您输入错误的 adUnitId 时。
- 当您传递错误的 AdSize(例如太大或太小)时。
- 当 Google 停止在您的应用中展示广告时,因为您违反了一些 admob 规则。
对于插播广告,示例广告单元 ID 必须是:ca-app-pub-3940256099942544/1033173712
这是指向每种格式的特定测试广告素材的演示广告单元。
切勿使用控制台中的应用 ID 来测试应用中的广告。而是使用这些示例 ID:
Ad format
Sample Ad Unit Id
How it looks
App Open
ca-app-pub-3940256099942544/3419835294
Banner
ca-app-pub-3940256099942544/6300978111
Interstitial
ca-app-pub-3940256099942544/1033173712
No preview
Interstitial Video
ca-app-pub-3940256099942544/8691691433
还有更多。你可以找到所有这些 here
我最近实施了 admob 插页式广告,并从方法 onAdFailedToLoad() 获得 exception/error 作为 构建请求错误 URL。,而且我的广告是未显示 .
我的代码:
InterstitialAd interstitialAd;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
InterstitialAd interstitialAd = new InterstitialAd(MainActivity.this);
interstitialAd.setAdUnitId(KEY);
MobileAds.initialize(MainActivity.this, new OnInitializationCompleteListener() {
@Override
public void onInitializationComplete(InitializationStatus initializationStatus) {
Log.e("app","MobileAds onInitializationComplete");
}
});
interstitialAd.loadAd(new AdRequest.Builder().build());
interstitialAd.setAdListener(new AdListener(){
@Override
public void onAdLoaded() {
Log.e("app","ad loaded");
}
@Override
public void onAdFailedToLoad(LoadAdError loadAdError) {
Log.e("app","ad failedToLoad: "+loadAdError.getMessage()); //error/exception here
}
});
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(interstitialAd.isLoaded()) {
interstitialAd.show();
Log.e("app","ad loaded");
}
else Log.e("app","ad not loaded yet");
}
}
我已经在 Manifest.xml
中正确注册了我的 ID<application>
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="@string/KEY"/>
</application>
遵循相同的准则shown in here
确保您在调用 InterstitialAd 时使用来自 AdMob 的正确测试广告 ID。这与您的 App ID 不同,它后面有一个斜线和一个数字。
为了测试, 使用 ca-app-pub-3940256099942544/1033173712 这是文档在撰写本文时给出的测试 ID。
我也遇到了类似的问题,检查后发现我输入的单元ID不正确。
我注意到在这些情况下会出现此错误:
- 当您输入错误的 adUnitId 时。
- 当您传递错误的 AdSize(例如太大或太小)时。
- 当 Google 停止在您的应用中展示广告时,因为您违反了一些 admob 规则。
对于插播广告,示例广告单元 ID 必须是:ca-app-pub-3940256099942544/1033173712
这是指向每种格式的特定测试广告素材的演示广告单元。
切勿使用控制台中的应用 ID 来测试应用中的广告。而是使用这些示例 ID:
Ad format | Sample Ad Unit Id | How it looks |
---|---|---|
App Open | ca-app-pub-3940256099942544/3419835294 | |
Banner | ca-app-pub-3940256099942544/6300978111 | |
Interstitial | ca-app-pub-3940256099942544/1033173712 | No preview |
Interstitial Video | ca-app-pub-3940256099942544/8691691433 |
还有更多。你可以找到所有这些 here