2015-09-25 7 views
8

Ich verwende Admob in meiner App, es funktionierte gut, aber plötzlich hörte es auf, Anzeigen überhaupt zu zeigen. Bellow ist meine Codes i verwendet:AdMob-Banner-Anzeige wird nicht angezeigt

mainActivity.xml:

<com.google.android.gms.ads.AdView 
     android:id="@+id/adView" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerHorizontal="true" 
     android:layout_alignParentBottom="true" 
     ads:adSize="BANNER" 
     ads:adUnitId="@string/banner_ad_unit_id"> 
    </com.google.android.gms.ads.AdView> 

MainActivity.java

 AdView mAdView = (AdView) findViewById(R.id.adView); 

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

     mAdView.loadAd(adRequest); 

AndroidManifest:

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

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

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

<!--Include the AdActivity configChanges and theme. --> 
<activity android:name="com.google.android.gms.ads.AdActivity" 
      android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" 
      android:theme="@android:style/Theme.Translucent" /> 

ich alle Anweisungen von AdMob-Website gefolgt wie ich schon sagte, es funktionierte vor ein paar Tagen.

Bellow sind wenige Linien von logcat, die zu meinem Problem in Zusammenhang stehen können:

09-25 22:44:50.292: E/dalvikvm(18554): Could not find class 'android.app.AppOpsManager', referenced from method com.google.android.gms.common.GooglePlayServicesUtil.zza 

09-25 22:45:07.209: E/Ads(18554): JS: Uncaught ReferenceError: renderAd is not defined (https://googleads.g.doubleclick.net/mads/gma:1) 
09-25 22:45:07.209: E/Web Console(18554): Uncaught ReferenceError: renderAd is not defined:1 
09-25 22:45:07.209: E/Ads(18554): JS: Uncaught ReferenceError: onLoad is not defined (https://googleads.g.doubleclick.net/mads/gma:1) 
09-25 22:45:07.209: E/Web Console(18554): Uncaught ReferenceError: onLoad is not defined:1 

ich dich die Warnung wiederholt, und es scheint mehr, wenn ich den leeren Bereich klicken, wo Anzeige sollte zeigen

09-25 22:46:10.911: W/PicturePileLayerContent(18554): Warning: painting PicturePile without content! 

Dies wird gefiltert logcat mit „Anzeigen“

09-25 23:39:25.948: I/Ads(28874): Starting ad request. 
09-25 23:39:25.948: I/Ads(28874): Use AdRequest.Builder.addTestDevice("8FCD71CAAE776558876AAA9BA964245A") to get test ads on this device. 

09-25 23:39:26.919: I/Ads(22050): App index is not enabled 
09-25 23:39:30.432: E/Ads(28874): JS: Uncaught ReferenceError: renderAd is not defined (https://googleads.g.doubleclick.net/mads/gma:1) 
09-25 23:39:30.442: E/Ads(28874): JS: Uncaught ReferenceError: onLoad is not defined (https://googleads.g.doubleclick.net/mads/gma:1) 
09-25 23:39:30.442: I/Ads(28874): Scheduling ad refresh 60000 milliseconds from now. 
09-25 23:39:30.472: I/Ads(28874): Ad finished loading. 

Ich habe überall für die Lösung gesucht und sah auch in einem ähnlichen, aber nicht von ihnen hat mir geholfen.

+0

Ich bekomme diesen Fehler nach dem Hinzufügen von builder(). AddTestDevice ("******") '09-26 14: 26: 49.691: E/Anzeigen (28853): JS: Uncaught ReferenceError: renderAd ist nicht definiert (https://googleads.g.doubleclick.net/mads/gma:1) 09-26 14: 26: 49.701: E/Anzeigen (28853): JS: Uncaught ReferenceError: onLoad ist nicht definiert (https: // googleads.g.doubleclick.net/mads/gma:1) ' – Darshan

Antwort

5

Dieses Problem durch die Deinstallation der App Puting gelöst manuell und erneut installieren, ohne Änderungen vorzunehmen !!

+0

Es funktioniert! In deiner Frage ging es nicht um Tests, oder? –

2

Überprüfen Sie, ob Sie die neuesten Versionen von adMob und GooglePlayServices lib haben.

+0

Ich habe gerade Google Play Services, die Rev. 26 zeigt, ich weiß nicht über AdMob Version gibt es keine Anleitung für diese Lib auf der offiziellen Website. – Darshan

11

Verwenden Sie den folgenden Codezeilen

AdView mAdView = (AdView) findViewById(R.id.adView); 

AdRequest request = new AdRequest.Builder() 
.addTestDevice(AdRequest.DEVICE_ID_EMULATOR)  // All emulators 
.addTestDevice("AC98C820A50B4AD8A2106EDE96FB87D4") // My Galaxy Nexus test phone 
.build(); 


mAdView.loadAd(request); 

anstelle der Verwendung dieses

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

weil diese Linie wird verwendet, wenn Ihre Anwendung wäre veröffentlichen auf Google Play Store bereit.

Sie können die ID Ihres Geräts anstelle von "AC98C820A50B4AD8A2106EDE96FB87D4" eingeben.Code Geräte-ID zu erhalten:

String android_id = Settings.Secure.getString(getContext().getContentResolver(), 
      Settings.Secure.ANDROID_ID); 

Bitte lesen Sie diese sorgfältig:

https://developers.google.com/admob/android/targeting#test_ads

https://developers.google.com/admob/android/quick-start

Sehen Sie diese

enter image description here

enter image description here

+1

Ich habe versucht, Ihren Code, entfernt diese Zeilen aus logcat '09-25 23: 39: 25.948: I/Ads (28874): Verwenden Sie AdRequest.Builder.addTestDevice (" 8FCD71F44FG4H6D7DAAA9BA964245A "), um Testanzeigen auf diesem Gerät zu erhalten, aber Anzeige immer noch nicht !!! – Darshan

+0

Google hat beantragt, diesen Code (den Sie zuvor verwendet haben) nicht zu verwenden, wenn sich Ihre App im Entwicklungsmodus befindet. Möglicherweise wurde Ihre Add-ID abgelehnt. Probieren Sie eine andere E-Mail aus und erstellen Sie eine weitere Anfrage zum Hinzufügen. –

+0

Ich habe einige Links angegeben, bitte sorgfältig lesen. –

1

das Banner in einem Linearlayout Put wie dies traf ich auf das gleiche Problem und ich regelte es, indem sie es in einem linearen Layout

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:ads="http://schemas.android.com/apk/res-auto" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentEnd="true" 
    android:id="@+id/linearLayout"> 

    <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="ca-app-pub-8056472942589154/2652831823" 
     android:layout_alignBottom="@+id/saida" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" /> 
</LinearLayout> 
+0

Es funktioniert nicht !. – Darshan

1

In meinem Fall erschien die Anzeige nicht, bis ich genug Platz dafür gab.

Bevor es war wie

<LinearLayout 
     android:orientation="vertical" 
     android:background="@color/primary" 
     android:layout_width="match_parent" 
     android:layout_height="90dip"> 
      <ImageView 
       android:onClick="goBack" 
       android:clickable="true" 
       android:src="@drawable/ic_arrow_back_white_48dp" 
       android:layout_width="50dip" 
       android:layout_height="50dip"/> 
      <com.google.android.gms.ads.AdView 
       android:layout_gravity="center_horizontal" 
       android:id="@+id/adView" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       ads:adSize="BANNER" 
       ads:adUnitId="@string/dwn_bnr_ad"/> 

Hier die adview ist mit einer Höhe von wrap_content, so passt es sich seine Höhe zu erreichen, aber seine Eltern (Linearlayout) hat eine strenge Höhe von 90dip die die adView erlauben doesnt um genügend Platz für die Anzeige von Anzeigen zu schaffen.

Also, was ich tat, war nur die Höhe des Linearlayouts verändert Dinge wrap_content dann bekamen feine

0

Haben Sie zurück zu Ihrem AdMob-Konto gehen, um Ihre spezifische Anwendung für Anzeigen registrieren und eine neue längeren Verlag Nummer mit der get 'ca-app-pub-' Vorwort anstelle des 'pub-' Vorworts?

Nirgendwo in der „Bannerwerbung 1“ Anweisungen auf der Google AdMob „Google Mobile Ads SDK“ Entwicklung Website nicht erwähnt es zurück zu Ihrem AdMob-Konto zu gehen, dies zu tun.

Dieser dumme Fehler hielt mich tagelang auf.