2014-04-15 18 views
9

AdMob non verrà visualizzato nella mia app. Ogni volta che invoco loadAd(..) ho ricevuto i seguenti errori:Android: AdMob non funziona

La risorsa di richiesta 0x7f0b000e non è riuscita perché è complessa. Le risorse dei servizi di riproduzione di Google non sono state trovate. Controlla la configurazione del tuo progetto per assicurarti che le risorse siano incluse. Si è verificato un problema durante il recupero della risposta di un annuncio. ErrorCode: 1

Ho cercato ore per una soluzione a questo problema ma non ho trovato nulla che funzioni per me! Ho scaricato l'ultima versione del Google Play Services e aggiunti come biblioteca nelle mie preferenze del progetto

Ecco il mio codice: attività:

public class WelcomeActivity extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     this.setContentView(R.layout.activity_welcome); 

     // Look up the AdView as a resource and load a request. 
     AdView adView = (AdView) this.findViewById(R.id.welcomeAdView); 

     AdRequest.Builder adRequestBuilder = new AdRequest.Builder(); 
     adRequestBuilder.addTestDevice("************"); 
     adRequestBuilder.addTestDevice(AdRequest.DEVICE_ID_EMULATOR); 
     AdRequest adRequest = adRequestBuilder.build(); 
     adView.loadAd(adRequest); 
    } 

}

layout xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:ads="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    xmlns:app="http://schemas.android.com/apk/res/xx.xx" 
    android:id="@+id/container" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    tools:context="xx.xx.WelcomeActivity" > 

.... other layout stuff ..... 

<RelativeLayout 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:layout_alignParentBottom="true" > 

    <com.google.android.gms.ads.AdView 
     android:id="@+id/welcomeAdView" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     ads:adSize="BANNER" 
     ads:adUnitId="pub-***************" /> 
</RelativeLayout> 

</RelativeLayout> 

AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="xx.xx" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-sdk 
     android:minSdkVersion="14" 
     android:targetSdkVersion="19" /> 

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/icon" 
     android:label="@string/app_name" 
     android:theme="@android:style/Theme.Holo.Light" > 
     <meta-data 
      android:name="com.google.android.gms.version" 
      android:value="@integer/google_play_services_version" /> 

     <activity 
      android:name="xx.xx.WelcomeActivity" 
      android:label="@string/app_name" 
      android:screenOrientation="portrait" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     ... some more activities ... 
     <activity 
      android:name="com.google.android.gms.ads.AdActivity" 
      android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" > 
     </activity> 
    </application> 

</manifest> 
+0

Nel caso in cui si utilizza un 'webViewInstance' e si è emesso un metodo come' .pauseTimers() ', o un metodo simile che sospende l'esecuzione certa del interfaccia utente principale? – nKn

+0

Non vedo alcun problema con il codice/layout. Ti suggerisco di provare a creare un altro annuncio UnitId – Libin

+0

@Libin: ho creato un nuovo annuncio UnitID e ora funziona! Grazie! Pubblica il tuo commento come anser e ti assegnerò la taglia :) – Markus

risposta

10

non trovo alcun problema con il codice/layout. Il problema potrebbe essere con lo Ads Unit Id.

io vi suggerisco di provare a creare un diverso Ads Unit Id

Speranza che funziona.

+0

Ciao, ho esattamente lo stesso problema, ma come posso creare un nuovo ID unità pubblicitaria? Admob mi sembra nuovo e non riesco a ottenere quale ID I devi prendere – Phil

+0

@Phil - Dai un'occhiata a questo sito: http://www.google.com/ads/admob/ – Markus

0

Aggiungi questo all'interno applicazione tag nel file manifesto:

<meta-data android:name="com.google.android.gms.version" 
    android:value="@integer/google_play_services_version"/> 
+0

Grazie per la risposta. Sfortunatamente il mio Manifest.xml contiene già questi metadati. Ho aggiunto il file AndroidManifest.xml alla mia domanda – Markus

+0

È molto raro che il mio amico :( – edgarmiro

1

Nel file di layout (activity_welcome.xml), il contenitore ADView (RelativeLayout) layout di larghezza/altezza sembra strano per me. E penso che sia inutile nel tuo caso d'uso.
Cambio da:

<RelativeLayout 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:layout_alignParentBottom="true" > 

    <com.google.android.gms.ads.AdView 
     android:id="@+id/welcomeAdView" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     ads:adSize="BANNER" 
     ads:adUnitId="pub-***************" /> 
</RelativeLayout> 

a:

<com.google.android.gms.ads.AdView 
    android:id="@+id/welcomeAdView" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    ads:adSize="BANNER" 
    ads:adUnitId="pub-***************" /> 
1

Hai sbagliato ads:adUnitId="pub-***************". Deve avere il formato ca-app-pub-3940256099942544/6300978111. Puoi prenderlo dopo aver creato il banner con l'url https://apps.admob.com/#monetize/adunit:create

+0

Nell'email che hanno inviato inizialmente, l'adUintId aveva solo fino alla barra. dalla scheda Monet ha risolto il problema – douggard

4

Aggiungendo questo nel caso in cui qualcun altro abbia lo stesso problema del mio.

Ho provato a utilizzare un nuovo Ads Unit ID e non ha funzionato altrettanto bene. Alla fine, il problema era perché stavo cercando di correggere un'app che è stata sospesa da Google Play e Admob aveva anche smesso di pubblicare annunci per le applicazioni con lo specifico package name/bundle ID.

La modifica del package name dell'applicazione ha risolto il problema per me.

+1

Salvato il mio uomo di notte :) –

+1

È bello ascoltare –

3

Fare attenzione alla stringa di identificazione dell'unità pubblicitaria. Il mio errore era uno spazio alla fine di adUnitId

0

Anche il pacchetto potrebbe essere bloccato da Google AdMob.Se hai ricevuto un e-mail come questa:

Ciao,

Questa email è per avvisare l'utente che una delle vostre applicazioni non è attualmente conforme alle norme del programma AdMob e, di conseguenza, la pubblicazione degli annunci è stata disattivata per la tua applicazione.

La pubblicazione degli annunci è stata disattivata per: APPNAME (com.example.pack)

Azione richiesta: Controllare tutte le altre applicazioni rimanenti nel tuo account per la conformità.

attuale stato del conto: Attivo .....

Così ora è necessario modificare il pacchetto della vostra applicazione. su eclipse è package = "com.example"