2015-10-24 43 views
1

我試圖讓AdMob來對我的應用程序工作,但每次我將此代碼添加到我的MainAcitvity.java:立即AdMob讓我的應用程序在啓動時崩潰?

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

應用程序崩潰,當我運行它。 我的應用程序是一個DrawerLayout,包含4個不同的片段,每個片段都包含自己的廣告。我已經爲廣告添加了與我的其他應用程序完全相同的代碼,在其上可以正常工作。

的logcat中這樣說:

 Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.google.android.gms.ads.AdView.loadAd(com.google.android.gms.ads.AdRequest)' on a null object reference 
     at test.testapp.MainActivity.onCreate(MainActivity.java:110) 
     at android.app.Activity.performCreate(Activity.java:6010) 
     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1129) 
     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2292) 


at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2413) 

at android.app.ActivityThread.access$800(ActivityThread.java:155) 
at  
android.app.ActivityThread$H.handleMessage(ActivityThread.java:1317) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:135) 
at android.app.ActivityThread.main(ActivityThread.java:5343) 
at java.lang.reflect.Method.invoke(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:372) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:905) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:700)  
+0

您是否將Ad Mob sdk作爲依賴項添加到您的gradle文件?另外,你是否已經導入了相關的軟件包? –

+0

是的,我導入這些:'import com.google.android.gms.ads.AdRequest; import com.google.android.gms.ads.AdView;'我在我的gradle文件中添加了'compile'c​​om.google.android.gms:play-services-ads:7.8.0'' – Spickle

+0

您是否下載了相關的Google Play服務包是通過SDK管理器爲您定位的API級別? –

回答

1

它是

mAdView.loadAd(adRequest); 

轟然這意味着,

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

不與adView在XML的ID找到一個組件佈局。

確保您的XML佈局中有一個ID爲adView的AdView。

0

我遇到了類似的問題。我的問題是單一活動。所以對於我來說,當我在國土資源文件密切檢查有我的活動二國土資源文件:

\水庫\佈局\ activity_main_lauch.xml

\水庫\佈局-V21 \ activity_main_lauch.xml

我正在修改單個文件,因此它出現錯誤。 當我在兩個文件開始工作時應用更改。 希望它可以幫助。

0

就我而言,我有兩個相同名稱的佈局:一個用於第23個版本,另一個一般。第一個是在第二個塊中有一個R.id.adView塊,但它沒有出現。 所以,我剛剛刪除了第23版,它開始正常工作