java.lang.IllegalStateException: Der ad-Größe und Anzeigenblock-ID muss festgelegt werden, bevor loadAd genannt wird

Ich bin nicht sicher, warum, aber aus irgendeinem Grund in meiner app, wenn ich rufe AdView.loadAd(AdRequest), meine app Ausgänge W/Ads: Required XML attribute "adSize" was missing. und stürzt dann ab mit der
java.lang.IllegalStateException: The ad size and ad unit ID must be set before loadAd is called. auch wenn in meinem xml-layout-Datei, die ich definiert haben adSize.
Irgendwelche Vorschläge?

XML-Layout-Datei

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:id="@+id/linearLayout"
            android:background="@android:color/white"
            android:orientation="vertical"
            android:padding="2dp"
            android:paddingTop="10dp">

            <com.google.android.gms.ads.AdView
                android:id="@+id/adView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                ads:adSize="BANNER"
                ads:adUnitId="****************" />
        </LinearLayout>

Java-Code

    AdView ad = (AdView) findViewById(R.id.adView);
    AdRequest adRequest = new AdRequest.Builder()
            .addTestDevice(AdRequest.DEVICE_ID_EMULATOR).build();
    ad.loadAd(adRequest);



One Reply
  1. 0

    Legen Sie die Ad-Größe und Banner-id programmgesteuert, bevor der Anruf loadAd() Methode:

    AdView ad = (AdView) findViewById(R.id.adView);
    //Set the Ad Size    
    ad.setAdSize(AdSize.BANNER);
     //Set the Banner Id
    ad.setAdUnitId(YOUR_BANNER_ID);    
    AdRequest adRequest = new AdRequest.Builder()
                    .addTestDevice(AdRequest.DEVICE_ID_EMULATOR).build();
            ad.loadAd(adRequest);

    Ändern Sie Ihr layout an:

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@android:color/white"
                android:orientation="vertical"
                android:padding="2dp"
                android:paddingTop="10dp">
    
            <RelativeLayout 
                android:id="@+id/adView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"/>
    
    </RelativeLayout>
    • Deine Antwort behebt Absturz-problem, aber für einige Grund der ad-banner zeigt: die Erforderlichen XML-Attribut „adSize“ fehlte.
    • werden Sie sicher, dass Sie setzen die adSize: ad.setAdUnitId(YOUR_BANNER_ID); und erstellen Sie Ihr Projekt wieder! =)
    • hmm ich habe ad.setAdUnitId(YOUR_BANNER_ID); aber aus irgendeinem Grund, es ist immer noch die Anzeige von XML-Attribut „adSize“ fehlte.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.