webentwicklung-frage-antwort-db.com.de

Android: AdMob funktioniert nicht

AdMob wird in meiner App nicht angezeigt. Bei jedem Aufruf von loadAd(..) erhalte ich folgende Fehler:

Das Anfordern der Ressource 0x7f0b000e ist fehlgeschlagen, da sie komplex ist. Die Google Play-Dienstressourcen wurden nicht gefunden. Überprüfen Sie Ihre Projektkonfiguration, um sicherzustellen, dass die Ressourcen enthalten sind. Es ist ein Problem mit der Anzeigenantwort aufgetreten. Fehlercode: 1

Ich habe Stunden nach einer Lösung für dieses Problem gesucht, aber nichts gefunden, was für mich funktioniert! Ich habe die neueste Version von Google Play Services heruntergeladen und sie als Bibliothek zu meinen Projekteinstellungen hinzugefügt

Hier ist mein Code: Aktivität:

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

Ich finde kein Problem mit Ihrem Code/Layout. Das Problem könnte mit dem Ads Unit Id sein.

Ich würde vorschlagen, dass Sie versuchen, einen anderen Ads Unit Id zu erstellen.

Hoffe, es funktioniert.

10
Libin

Fügen Sie dies einfach hinzu, falls jemand anderes das gleiche Problem hat wie ich.

Ich habe versucht, einen neuen Ads Unit ID zu verwenden, und das hat nicht so gut funktioniert. Am Ende lag das Problem daran, dass ich versuchte, eine App zu reparieren, die von Google Play gesperrt wurde, und Admob hatte auch die Schaltung von Anzeigen für Anwendungen mit dem spezifischen package name / bundle ID eingestellt.

Das Ändern des package name der Anwendung hat das Problem für mich behoben.

4
Reuben L.

Achten Sie auf die Anzeigenblock-ID-Zeichenfolge. Mein Fehler war ein Leerzeichen am Ende der AdUnitId

3
GeralexGR

Sie haben den falschen ads:adUnitId="pub-***************" verwendet. Es muss wie ca-app-pub-3940256099942544/6300978111 Format aussehen. Sie können es nach dem Erstellen des Banners über URL https://apps.admob.com/#monetize/adunit:create übernehmen.

1

In Ihrer Layoutdatei (activity_welcome.xml) sieht die Breite/Höhe des Adview-Containers (RelativeLayout) für mich ungewöhnlich aus. Und ich denke, es ist in Ihrem Anwendungsfall unbrauchbar.
Wechsel von: 

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

zu:

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

Fügen Sie dieses in application tag in Ihre Manifest-Datei ein:

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

Ihr Paket wird möglicherweise auch von Google AdMob blockiert. Wenn Sie eine E-Mail wie diese erhalten haben:

Hallo,

Diese E-Mail weist Sie darauf hin, dass eine Ihrer Anwendungen derzeit nicht den Richtlinien des AdMob-Programms entspricht. Daher wurde die Anzeigenschaltung für Ihre Anwendung deaktiviert.

Die Anzeigenlieferung wurde deaktiviert für: APPNAME (com.example.pack)

Erforderliche Aktion: Überprüfen Sie alle anderen verbleibenden Anwendungen in Ihrem Konto Auf Konformität.

Aktueller Kontostatus: Aktiv .....

Jetzt musst du dein Paket deiner App ändern. auf Eclipse ist package = "com.example"  

0
Said Erraoudy