android Google AdMob不显示广告

piwo6bdm  于 2023-05-12  发布在  Android
关注(0)|答案(1)|浏览(313)

我试图把广告我的应用程序,我把我的应用程序在亚马逊应用程序商店,然后批准谷歌admob我设置广告单位ID(下一级推广),并把在XML和Java部分适当的代码,它的工作,但我仍然没有得到任何广告栏在我的应用程序的主页.有人知道为什么没人提起吗?
Java:

` MobileAds.initialize(this, initializationStatus -> {});
    // Create an AdView and set the ad unit ID and ad size
    adView = new AdView(this);
    adView.setAdUnitId("*******"); 
    adView.setAdSize(AdSize.BANNER);

    // Add the AdView to your layout
    LinearLayout adContainer = findViewById(R.id.ad_container);
    if (adContainer != null) {
        adContainer.addView(adView);

        // Load an ad
        AdRequest adRequest = new AdRequest.Builder().build();
        adView.loadAd(adRequest);
    }`

XML:

`<com.google.android.gms.ads.AdView
        android:id="@+id/ad_container"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        app:adSize="BANNER"
        app:adUnitId="***" />`
omhiaaxx

omhiaaxx1#

首先,我建议遵循official guidelines,在Android应用程序中正确实现横幅广告。
其次,无法获得广告的原因可能有很多,例如最近创建的AdMob帐户或新创建的广告单元ID可能会导致问题。
第三,在您的代码中,您错误地实现了横幅广告。AdMob建议您以相同的方式设置广告大小和广告单元ID(例如以XML设置或以编程方式设置),但不要同时设置。在xml中设置app:adSizeapp:adSize时,不需要以编程方式设置相同的属性。
第四,xml中设置AdView的id为android:id="@+id/ad_container"。但在代码中,您将AdView作为LinearLayout访问,如下所示:

LinearLayout adContainer = findViewById(R.id.ad_container);
adContainer.addView(adView);

您正在将新创建的AdView附加到另一个AdView

那么下一步是什么?

我假设你的活动是MainActivity。然后更改您的实现代码,如下所示:

public class MainActivity extends AppCompatActivity {
    private AdView mAdView;

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        MobileAds.initialize(this, new OnInitializationCompleteListener() {
            @Override
            public void onInitializationComplete(InitializationStatus initializationStatus) {
            }
        });

        //We will use R.id.ad_container here as per your XML
        mAdView = findViewById(R.id.ad_container);
        AdRequest adRequest = new AdRequest.Builder().build();
        mAdView.loadAd(adRequest);
    }
}

上面的例子是从Admob Documentation复制的。

请不要使用真实的广告进行调试,您应该使用Admob的Demo AdUnit Ids来避免策略问题。

我就知道这么多希望能有帮助。

相关问题