2015-09-24 3 views
2

Я знаком с внедрением Admob в моем приложении, однако я пытаюсь сменить свой код на Action to Fragments.Ошибка отображения значка Admob в фрагменте

Я получаю исключение NullPointerException. Я считаю, что использование getView() может быть причиной моей проблемы.

код Admob: Фрагмент

//CREATE BANNER ADD 
    private void createAdmobBanner() 
    { 
     // Create an ad. 

     adView = (com.google.android.gms.ads.AdView) getView() 
       .findViewById(R.id.adView); 
     AdRequest adRequest = new AdRequest.Builder() 

     // Add a test device to show Test Ads 
       .addTestDevice(AdRequest.DEVICE_ID_EMULATOR) 
       // .addTestDevice("B3827F13FB335337F4CA0F350B78A866") 
         .build(); 


       // Load ads into Banner Ads 
      adView.loadAd(adRequest); 

    } 

XML Admob Layout

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:ads="http://schemas.android.com/apk/res-auto" 
android:id="@+id/adViewHolder" 
android:layout_width="fill_parent" 
android:layout_height="@dimen/ad_bottom_height" 
android:layout_marginTop="1dp" 

android:gravity="center_vertical" 
android:orientation="horizontal" > 

<com.google.android.gms.ads.AdView 
    android:id="@+id/adView" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    ads:adSize="SMART_BANNER" 
    ads:adUnitId="ca-app-pub-xxxx/xxxx" 
    /> 

</LinearLayout> 


<RelativeLayout 
    android:layout_width="fill_parent" 
    android:layout_height="@dimen/bottom_bar_height" 

    android:orientation="horizontal" > 

<Button 
    android:id="@+id/button1" 
    android:text="Refresh Scores" 
    android:layout_height="wrap_content" 
    android:layout_width="fill_parent" 
    android:textSize="11dp" 
android:layout_weight="1" 
     /> 

Примечание: я использую ... включают макет = "@ макет/admob_ad" /> в моем фрагменте макета XML ,

Код ошибки:

09-24 22: 04: 02,429: E/AndroidRuntime (5375): java.lang.NullPointerException: Попытка вызвать виртуальный метод «недействительные com.google.android.gms.ads. AdView.loadAd (com.google.android.gms.ads.AdRequest) 'на ссылке нулевого объекта 09-24 22: 04: 02.429: E/AndroidRuntime (5375): на info.androidhive.slidingmenu.ChampionsFragment.createAdmobBanner (ChampionsFragment.java:391)

ответ

0

я столкнулся Аналогичная проблема, когда я проверил тесно в файле ресурсного Существовало два файла для ресурсных моей деятельности:

  1. \res\layout\activity_main_lauch.xml
  2. \res\layout-v21\activity_main_lauch.xml

Я был один файл необходимости модифицировать, следовательно, он бросает ошибку. когда я применяю изменение в обоих файлах, он начал работать.

Смежные вопросы