Mancava l'attributo XML richiesto "adSize"

Ottengo un "attributo XML richiesto" che mancava adSize quando lancio la mia applicazione. Questo è scritto sullo schermo del mio smartphone invece del mio banner. Provo la soluzione diversa fondata sullo stack (come xmlns: ads = "http://schemas.android.com/apk/res-auto" anziché xmlns: ads = "http://schemas.android.com/apk/ libs / com.google.ads "o anziché xmlns: ads =" http://schemas.android.com/apk/lib/com.google.ads ") ma nessuno funziona … Ecco il mio codice java (a semplicemente Hello World solo per cercare di implementare un banner):

package com.example.publicite; import android.os.Bundle; import android.app.Activity; import android.view.Menu; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } 

}

  • Come rimuovere le icone di Google+ non utilizzate importte dalla libreria di Google Play
  • Come aggiungere elementi secondari in un cassetto di navigazione
  • Video che non suonano in Android
  • Progetto Android Studio Root Nome di dialer Nome / Cambio nome progetto
  • SeekBar programmaticamente
  • Aggiunta di cartelle java al progetto studio di android
  • Ecco il mio file xml:

     <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:ads="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> <com.google.android.gms.ads.AdView xmlns:ads="http://schemas.android.com/apk/libs/com.google.ads" android:id="@+id/adView" android:layout_width="fill_parent" android:layout_height="wrap_content" ads:adSize="BANNER" ads:adUnitId="MyAdUnitId" ads:loadAdOnCreate="true" ads:testDevices="TEST_EMULATOR" /> <Button android:id="@+id/votrescore" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="..." /> 

    e qui è il mio manifesto:

     <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.publicite" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="13" android:targetSdkVersion="13" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/> <activity android:name="com.example.publicite.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" /> </application> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 

    Io uso il servizio google play lib. Grazie.

  • Gli annunci Admob appaiono solo dopo il primo aggiornamento
  • Admob Native Ads in RecyclerView
  • L'applicazione Android non viene avviata dopo l'aggiunta di admob
  • Come creare annunci interstitial su android?
  • java.lang.ClassNotFoundException: android.os.AsyncTask causato da AdMob / Google Play Services?
  • Disconnessione di Firebase App da AdMob App
  • 9 Solutions collect form web for “Mancava l'attributo XML richiesto "adSize"”

    Ecco una strana risposta. Ho appena riacceso la mia eclipse e ho lavorato. Questo potrebbe aiutare uno.

    Basta riavviare eclipse o studio android

    Prova a modificare la tua dichiarazione in questo modo:

     <com.google.android.gms.ads.AdView xmlns:ads="http://schemas.android.com/apk/res-auto" android:id="@+id/adView" android:layout_width="match_parent" android:layout_height="wrap_content" ads:adUnitId="YOUR_AD_UNIT_ID" ads:adSize="BANNER"/> 

    —- EDIT —-

    Puoi anche provare a farlo in modo programmato. Semplicemente, invece di un AdView layout AdView , definire un LinearLayout e dal codice fare qualcosa di simile:

     final AdView adView = new AdView(getActivity()); adView.setAdUnitId("YourId"); adView.setAdSize(AdSize.BANNER); final LinearLayout adLinLay = (LinearLayout) view.findViewById(R.id.your_defined_linearlayout); adLinLay.addView(adView); final AdRequest.Builder adReq = new AdRequest.Builder(); final AdRequest adRequest = adReq.build(); adView.loadAd(adRequest); 

    cambiare come segue .. rimuovi gli annunci: loadAdOnCreate = "true"

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

    controlla questo collegamento, ha un esempio chiaro

    https://developers.google.com/mobile-ads-sdk/docs/admob/fundamentals#play

    Ciò accade quando l'eclipse non è riuscito a sincronizzare il tuo xml con la libreria di giochi di Google, prova a pulire il progetto e riavviare l'eclipse

    Juste pulisce la tua applicazione!

    Build -> Progetto pulito

    Il messaggio scomparve.

    aggiungere questo in android manifesto:

     <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" android:theme="@android:style/Theme.Translucent" /> 

    android: theme = "Android @: stile / Theme.Translucent"

    risolve il mio problema, spero che risolverà il tuo 🙂

    Si scopre che non è ansible utilizzare wrap_content come una dimensione, quindi è necessario assegnargli una dimensione. I miei annunci non funzionavano e dopo un giorno di googling ho cambiato il mio

    android:layout_height="wrap_content"

    a

    android:layout_height="100dp"

    e ha risolto il problema. PS "match_parent" funziona (ho quello impostato per la mia width)

    Verifica anche per DEIVCE_ID_EMULATOR come nel mio codice Ho il codice riportto di seguito dal tutorial di Google:

     AdRequest adRequest = new AdRequest.Builder() .addTestDevice(AdRequest.DEVICE_ID_EMULATOR) .build(); 

    Nel mio caso la stavo testando su un dispositivo reale in modo che non sia mai venuto in moto, ma mi ha appena dato il messaggio che l'annuncio non è stato impostato. Ho eseguito un emulatore e la soluzione di nkn funziona perfettamente.

    Ecco il mio codice completo: nell'attività principale:

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

    e il mio XML:

     <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content"> <com.google.android.gms.ads.AdView xmlns:ads="http://schemas.android.com/apk/res-auto" android:id="@+id/adView" android:layout_width="wrap_content" android:layout_height="wrap_content" ads:adUnitId="@string/UNIT_ID" ads:adSize="BANNER"/> </LinearLayout> 

    ORA fai funzionare l'app sul tuo dispositivo e controlla il tuo logcat in quanto mostrerà la row: I / Ads: Use

     AdRequest.Builder.addTestDevice("33BE2250B43518CCDA7DE426D04EE232") to get test ads on this device. 

    Copiare questo ID (DIFFERENTE PER IL VOSTRO DISPOSITIVO) all'addTestDevice come segue:

     AdView adView = (AdView)findViewById(R.id.adView); AdRequest adRequest = newAdRequest.Builder() .addTestDevice("33BE2250B43518CCDA7DE426D04EE232") .build(); adView.loadAd(adRequest); 

    Ecco come ho risolto questo problema nel mio caso.

    Spero che sia d'aiuto.

    Ho lo stesso problema.

    Soluzione per me:

      xmlns:ads="" 

    cambiato in

     xmlns:ads="http://schemas.android.com/apk/res-auto" 
    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.