2014-09-27 97 views
9

嗯,這是一個奇怪的錯誤,很難找到。剛開始之前:找不到類com.google.android.gms.analytics.GoogleAnalytics

  • 在我的應用程序中,我安裝了Admob並正在工作。所以GooglePlayServices的配置似乎沒問題(lib作爲項目添加了......)。
  • 我使用的是googleplayservices的第17版。還測試了v21和v22。
  • 我的手機擁有Android 2.3的

基本上我遇到的問題是下面,我跟進Android電子教程(我見過......最糟糕的一個),並在應用程序類(即在之前存在的)我包括跟蹤器功能:

public synchronized Tracker getTracker(TrackerName trackerId) { 
    if (!mTrackers.containsKey(trackerId)) { 

     GoogleAnalytics analytics = GoogleAnalytics.getInstance(this); 
     Tracker t = analytics.newTracker(PROPERTY_ID); 
     mTrackers.put(trackerId, t); 

    } 
    return mTrackers.get(trackerId); 
} 

我加入了公共關鍵字的功能,因爲它是不可見的...

所以,當我在使用應用程序的任何一部分功能我收到以下錯誤:

09-27 16:43:54.099: E/dalvikvm(2407): Could not find class 'com.google.android.gms.analytics.GoogleAnalytics$b', referenced from method com.google.android.gms.analytics.GoogleAnalytics.enableAutoActivityReports

後來就出現以下錯誤:

09-27 16:43:54.129: E/AndroidRuntime(2407): Caused by: java.lang.NullPointerException 09-27 16:43:54.129: E/AndroidRuntime(2407): at android.content.ContextWrapper.getApplicationContext(ContextWrapper.java:100) 09-27 16:43:54.129: E/AndroidRuntime(2407): at com.google.android.gms.analytics.t.(Unknown Source) 09-27 16:43:54.129: E/AndroidRuntime(2407): at com.google.android.gms.analytics.t.q(Unknown Source) 09-27 16:43:54.129: E/AndroidRuntime(2407): at com.google.android.gms.analytics.GoogleAnalytics.(Unknown Source) 09-27 16:43:54.129: E/AndroidRuntime(2407): at com.google.android.gms.analytics.GoogleAnalytics.getInstance(Unknown Source)

任何想法如何解決呢?

+0

在2.3和4.4.3中失敗 – 2014-10-03 18:13:06

+0

您使用的是proguard嗎? – 2014-12-09 16:20:20

+0

不,我不是。謝謝 – 2014-12-11 22:09:07

回答

0

所以,最後它解決了。以防萬一有人遇到與我一樣的問題。我在這裏提供什麼最後的動作我做的,終於使工作谷歌分析:

  • 使用設備2.3.6(三星Galaxy ACE)
  • 我從24.0.1更新的Android SDK工具到24.0.2
  • 我從10更新的Android支持庫至11
  • 我的應用程序是使用Android系統的支持,V7和google_play_services
  • 它已經將AdMob從谷歌播放服務(沒有證據的Google Play服務被錯誤地安裝)。

所以,我不知道是什麼讓它最終工作,但看起來像與Android SDK工具或Android支持存儲庫更新有關。

我只是留下這個信息,以防萬一有人面臨同樣的問題,你能夠隔離問題。如果有人正在閱讀這個解決方案,我建議隔離更新,以便我們可以提供更好的信息給其他人。

希望它有幫助!

-1

確保您不僅將庫添加到項目中,而且還必須鏈接它。轉到項目屬性,然後android,在右側窗格中,您將看到「庫」。確保您使用綠色支票查看您想要的Google Play服務庫。如果您沒有看到它,請添加它。

另一個原因可能是您沒有通過導入語句將您需要的庫的某些部分導入到活動中,但通常上面的問題是最常發生的或者人們忘記做的事情。但是,NULL指針異常消息正是它的意思,如果您在兩個提到的區域中都遇到問題,那麼您將得到確切的消息,因爲它無法找到您引用的資源或類。

+0

由於AdMob正在使用我的應用程序,因此Google Play服務的配置應該沒有任何問題。 – 2014-12-21 12:45:11

+0

對於空指針,因爲我使用的是eclipse,所以如果是這種情況,應該有一個缺少庫部件的消息。 – 2014-12-21 12:45:45