【问题标题】:Unable to load ad using adMob in android无法在 Android 中使用 adMob 加载广告
【发布时间】:2020-04-21 20:32:07
【问题描述】:

我尝试使用测试 ID,它会显示广告。后来我输入了自己的 ID,但它没有显示任何广告。

代码:

        setContentView(R.layout.activity_testing);
        mInterstitialAd = new InterstitialAd(TestAd.this);
        mInterstitialAd.setAdUnitId(getString(R.string.adunitid));
        AdRequest adRequest=new AdRequest.Builder().build();
        mInterstitialAd.loadAd(adRequest);
       ad.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if(mInterstitialAd.isLoaded()){
                    mInterstitialAd.show();
                }
                else{
                    Toast.makeText(TestAd.this, "Ad Not Loaded", Toast.LENGTH_SHORT).show();
                }
                mInterstitialAd.setAdListener(new AdListener(){
                    @Override
                    public void onAdClosed() {
                        mInterstitialAd.loadAd(new AdRequest.Builder().build());
                        super.onAdClosed();
                    }
                });
            }
        });

用于初始化的Java文件:

public class Admob extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        MobileAds.initialize(this, new OnInitializationCompleteListener() {
            @Override
            public void onInitializationComplete(InitializationStatus initializationStatus) {
            }
        });
    }}

Android 清单:

android:name="com.test.Admob"
 <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="@string/appid"/>

【问题讨论】:

    标签: android admob ads interstitial


    【解决方案1】:

    首先,您不能在调试模式下显示实时广告, 如果它正在使用测试 ID,那么在您发布应用程序时使用真实 ID 也应该很酷。

    但是您还可以使用另一件事,我的意思是确保一切正常。

    首先,让每个 ids 真实包含清单文件中的 id。

    运行您的应用程序后,打开您的 Logcat 并简单地编写

    测试

    像这样,

    获取该 ID 并像这样更新您的 AdRequest

    AdRequest adRequest=new AdRequest.Builder().addTestDevice("id_here").build();
    

    并重新运行您的应用。

    恭喜,您现在可以看到带有真实身份的广告了!希望有帮助!

    更新:

    旧用法看起来已弃用,谢谢@heisenberg3008

    正如谷歌所建议的那样,current usage 应该是这样的

    List<String> testDeviceIds = Arrays.asList("id_here");
    RequestConfiguration configuration =
        new RequestConfiguration.Builder().setTestDeviceIds(testDeviceIds).build();
    MobileAds.setRequestConfiguration(configuration);
    

    这是一次性的。因此,无需像以前那样对每个广告项都这样做

    【讨论】:

    • addTestDevice 现已弃用。
    • List testDeviceIds = Arrays.asList("33BE2250B43518CCDA7DE426D04EE231"); RequestConfiguration 配置 = new RequestConfiguration.Builder().setTestDeviceIds(testDeviceIds).build(); MobileAds.setRequestConfiguration(配置);这是 Google 测试广告页面上推荐的内容。但我不知道我在哪里粘贴这个?
    • 是的,它看起来已经过时了,新版本更好用
    • 我已经粘贴了上面的代码。你知道我们应该把它放在哪里吗? @haliltprkk
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-01-12
    • 2016-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多