web-dev-qa-db-fra.com

Android: AdMob ne fonctionne pas

AdMob ne sera pas affiché dans mon application. Chaque fois que j'appelle loadAd(..), j'obtiens les erreurs suivantes:

La demande de ressource 0x7f0b000e a échoué car elle est complexe. Les ressources des services de lecture Google Sont introuvables. Vérifiez la configuration de votre projet pour vous assurer que les ressources sont incluses. Il y avait un problème pour obtenir une réponse publicitaire. Code d'erreur: 1

J'ai cherché pendant des heures une solution à ce problème mais je n'ai rien trouvé qui puisse fonctionner pour moi! J'ai téléchargé la dernière version du Google Play Services et les ai ajoutées en tant que bibliothèque dans les préférences de mon projet.

Voici mon code: Activité:

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>
10
Markus

Je ne trouve aucun problème avec votre code/mise en page. Le problème pourrait être avec le Ads Unit Id.

Je vous suggérerais d'essayer de créer un Ads Unit Id différent

Esperons que ça marche.

10
Libin

Ajoutez simplement ceci au cas où quelqu'un aurait le même problème que le mien.

J'ai essayé d'utiliser un nouveau Ads Unit ID et cela n'a pas fonctionné aussi bien. En fin de compte, le problème était lié au fait que j'essayais de corriger une application qui avait été suspendue de Google Play et qu'Admob avait également arrêté de diffuser des annonces aux applications dotées du package name / bundle ID spécifique.

Changer le package name de l'application a résolu le problème pour moi.

4
Reuben L.

Faites attention à la chaîne d'identifiant d'unité d'annonce. Mon erreur était un espace à la fin de l'adUnitId

3
GeralexGR

Vous avez utilisé le mauvais ads:adUnitId="pub-***************". Cela doit ressembler au format ca-app-pub-3940256099942544/6300978111. Vous pouvez le prendre après avoir créé une bannière en url https://apps.admob.com/#monetize/adunit:create

1
Ievgenii Tkachenko

Dans votre fichier de présentation (activity_welcome.xml), la disposition largeur/hauteur du conteneur adview (RelativeLayout) me semble étrange. Et je pense que cela est inutile dans votre cas d'utilisation.
Changer de: 

<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>

à:

<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
正宗白布鞋

Ajoutez ceci dans application tag dans votre fichier Manifest:

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

Aussi Votre paquet peut être bloqué par Google AdMob. Si vous avez reçu un email comme celui-ci:

Bonjour,

Cet e-mail vous avertit qu'une de vos applications n'est pas en conformité avec les règles de notre programme AdMob. Par conséquent, la diffusion d'annonces a été désactivée pour votre application.

La diffusion des annonces a été désactivée pour: APPNAME (com.example.pack).

Action requise: vérifiez la conformité de toutes les autres applications restantes de votre compte .

État actuel du compte: actif .....

Alors maintenant, vous devez modifier votre package de votre application. sur Eclipse c'est package = "com.example"  

0
Said Erraoudy