Ayu*_*ush 12 ads interstitial admob android-studio
我正在尝试为我的应用加载插页式广告。每当我尝试加载这些广告时,都会收到来自域“com.google.android.gms.ads”的“无广告配置”错误消息。
这是代码:
我的 AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ayush.torch">
<application
android:allowBackup="true"
android:icon="@drawable/ic_ico"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".main">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="i_have_put_my_app_id_here"/>
</application>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.FLASHLIGHT" />
</manifest>
Run Code Online (Sandbox Code Playgroud)
main.java 中的onCreate()
// Creating the InterstitialAd and setting the adUnitId.
interstitialAd = new InterstitialAd(this);
interstitialAd.setAdUnitId("i have also put my interstitial ad id here");
interstitialAd.setAdListener(new AdListener() {
@Override
public void onAdLoaded() {
Toast.makeText(main.this, "Ad Loaded", Toast.LENGTH_SHORT).show();
}
@Override
public void onAdFailedToLoad(LoadAdError loadAdError) {
String error = String.format("domain: %s, code: %d, message: %s", loadAdError.getDomain(), loadAdError.getCode(), loadAdError.getMessage());
Toast.makeText(main.this, "onAdFailedToLoad() with error: " + error, Toast.LENGTH_SHORT).show();
}
});
Run Code Online (Sandbox Code Playgroud)
当我在on函数中加载我的广告时,它给我错误“无广告配置”。
Log.d("[Ads]","Ad Load State For on(): " + interstitialAd.isLoaded());
if (interstitialAd.isLoaded())
{
interstitialAd.show();
}
Run Code Online (Sandbox Code Playgroud)
Ayu*_*ush 16
固定它,它的工作原理。
从谷歌找到了一个资源。它消除了我所有的疑虑。对于测试广告资源点击我
该广告以两种方式工作。
场景 1:当应用程序处于开发阶段时
对于这种情况,我们需要使用测试广告。由于错误印象,Admob 和“com.google.android.gms.ads”不允许用户在开发阶段使用广告。
启用测试广告。有两种方法:您可以使用链接 adove 上提供的谷歌广告单元 ID。或者您可以使用您自己的广告单元 ID,但您需要将您的设备注册为测试设备并使用您自己的请求配置。这是一个简单的示例:在“Logcat”中搜索您的“设备 ID”
它看起来像
I/ADS: Use Requested Configuration......Arrays.asList("Your device Id will be here");
然后只需复制粘贴这个(我能读懂你的想法..)
// Change your Id
RequestConfiguration configuration = new RequestConfiguration.Builder().setTestDeviceIds(Arrays.asList("your device id should go here")).build();
MobileAds.setRequestConfiguration(configuration);
Run Code Online (Sandbox Code Playgroud)
现在只需加载广告,它就会弹出。恭喜。:)
场景 2:当应用程序在生产中时
这是非常简单的部分...
小智 16
我的错误:同时设置测试设备和加载测试广告
解决方案:仅使用一个。通过使用具有生产广告单元 ID 的测试设备,错误消失了。即使您指定了制作广告单元 ID,广告也会再次加载,并且它们是测试广告
小智 10
这是另一种不需要编程的方法。
转到 Admob 仪表板 > 设置 > 测试设备 > 添加测试设备
要找到此信息,请转到您的设备设置 > Google > 广告 >,您可以在其中找到您的广告 ID!
如果您的应用已上传到某个商店并且您没有正确设置app-ads.txt,也可能会发生这种情况。
您应该记住,如果您使用 AdMob 测试广告,您也应该将此条目添加到您的app-ads.txt中:
google.com,pub-3940256099942544,直接,f08c47fec0942fa0
来源: https: //developers.google.com/admob/android/test-ads
归档时间: |
|
查看次数: |
14534 次 |
最近记录: |