2017-02-18 64 views
2

Я использовал это руководство для отображения AdMob баннер в мое приложение https://firebase.google.com/docs/admob/android/quick-start Моя проблема заключается в том, что AdMob баннер показывается только на моем тестовом устройстве, как этот Но на реальном устройстве I не видит ничего моя зависимость в Gradle файла:AdMob не работает на реальном устройстве

dependencies { 
compile fileTree(include: ['*.jar'], dir: 'libs') 

compile 'com.android.support:appcompat-v7:25.1.0' 
compile 'com.android.support:design:25.1.0' 
compile 'de.hdodenhof:circleimageview:1.3.0' 
compile 'com.android.support:support-v4:25.1.0' 

compile 'com.google.firebase:firebase-core:10.0.1' 
compile 'com.google.firebase:firebase-ads:10.0.1' 

compile 'com.google.android.gms:play-services:10.0.1' 

compile 'com.android.support:multidex:1.0.1' 
testCompile 'junit:junit:4.12' 
} 
apply plugin: 'com.google.gms.google-services' 

Это мой код:

MobileAds.initialize(getContext(), "ca-app-pub-****"); 
AdRequest request = new AdRequest.Builder() 
      .addTestDevice(AdRequest.DEVICE_ID_EMULATOR) 
      .addTestDevice("4F8D70E24813A8C1CFF9B07A47A4F484") 
      .setRequestAgent("android_studio:ad_template") 
      .build(); 
    mAdView.loadAd(request); 

И это мое 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" 
tools:context="com.saffru.colombo.navigationdrawervideotutorial.MainFragment"> 

<!-- TODO: Update blank fragment layout --> 

<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:text="@string/l_apos_onomastico_di_oggi" 
    android:id="@+id/textView2" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true" 
    android:layout_marginTop="100dp" /> 

<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:text="@string/xxx" 
    android:id="@+id/textView3" 
    android:textColor="@color/verde1" 
    android:layout_below="@+id/textView2" 
    android:layout_centerHorizontal="true" 
    android:layout_marginTop="46dp" /> 

<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="ca-app-pub-****"> 
</com.google.android.gms.ads.AdView> 


</RelativeLayout> 

Не работает.

Это скриншот моего приложения.

Мой код

MobileAds.initialize(getContext(), "ca-app-pub-6864438797370510/3840785983"); 

AdView mAdView = (AdView) view.findViewById(R.id.adView); 
AdRequest adRequest = new AdRequest.Builder().build(); 
mAdView.loadAd(adRequest); 

И в моем счете AdMob я вижу этот

Если добавить .addTestDevice ("***") Мой LogCat является

02-19 22:07:28.379 2762-2762/com.saffru.colombo.onomastici2 W/System: 
ClassLoader referenced unknown path: 
/data/user/0/com.google.android.gms/app_chimera/m/0000000e/n/armeabi-v7a 
02-19 22:07:28.380 2762-2762/com.saffru.colombo.onomastici2 W/System: 
ClassLoader referenced unknown path: 
/data/user/0/com.google.android.gms/app_chimera/m/0000000e/n/armeabi 
02-19 22:07:28.392 2762-2762/com.saffru.colombo.onomastici2 
I/FirebaseCrashApiImpl: FirebaseCrashApiImpl created by ClassLoader 
p[DexPathList[[zip file" 
/data/data/com.google.android.gms/app_chimera/m/0000000e/ 
DynamiteModulesC_GmsCore_prodmnc_xxhdpi_release.apk"], 
nativeLibraryDirectories[/data/user/0/com.google.android.gms/ 
app_chimera/m/0000000e/n/armeabi-v7a, 
/data/user/0/com.google.android.gms/app_chimera/m/0000000e/n/armeabi, 
/vendor/lib, /system/lib]]] 
02-19 22:07:29.145 2762-2762/com.saffru.colombo.onomastici2 W/System: 
ClassLoader referenced unknown path: 
/data/user/0/com.google.android.gms/app_chimera/m/0000000c/n/armeabi 
02-19 22:07:29.230 2762-2878/com.saffru.colombo.onomastici2 W/System: 
ClassLoader referenced unknown path: 
/data/user/0/com.google.android.gms/app_chimera/m/0000000c/n/armeabi 
02-19 22:07:29.295 2762-2888/com.saffru.colombo.onomastici2 D/OpenGLRenderer: 
Use EGL_SWAP_BEHAVIOR_PRESERVED: true 
+0

доля журналов с вашего устройства .. Вы AdUnitId может быть неправильно, попробуйте изменить его новым Я бы? –

+0

Я добавляю свой logcat –

ответ

2

Этот код для проверки объявлений admob. Думаю, вы следили за учебником по тестовым объявлениям.

Вам необходимо создать собственное приложение в учетной записи admob и включить рекламный блок в инициализацию части.

Ссылка ссылка: https://support.google.com/admob/answer/3052638

Ваш код вида деятельности.

  MobileAds.initialize(getApplicationContext(), "Your own admob ad-unit"); 

      AdView mAdView = (AdView) findViewById(R.id.adView); 
      AdRequest adRequest = new AdRequest.Builder().build(); 
      mAdView.loadAd(adRequest); 

Этих четырех линий достаточно. Кроме этого все в порядке.

Примечание. Не проверяйте свой реальный рекламный блок admob. Если это так, есть шанс прекратить действие вашей учетной записи admob google.

При отпускании приложения в игровом магазине вам необходимо использовать свой реальный рекламный блок.

+0

Я только что создал учетную запись AdMob, в своем коде я положил идентификатор приложения на страницу управления приложениями в AdMob. –

+0

Вы имеете в виду рекламный блок? Вы изменили код, как эти 4 строки? Затем, сгенерируйте подписанное приложение i.e, выпустите сборку и опубликуйте свое приложение в Google Play Store. Затем, скачайте оттуда и проверьте. – Sivakumar

+0

Я меняю код на эти четыре строки, и я опубликовал приложение. Но как я могу проверить его на реальном устройстве без удаления моей учетной записи? –

0

Проверьте журналы вы найдете ошибку о том, чтобы добавить устройство в качестве тестового устройства, использующего эту строку кода

`AdSettings.addTestDevice("You will find the Key in your logs");`