【问题标题】:Google Analytics crash caused谷歌分析崩溃导致
【发布时间】:2015-09-16 13:10:55
【问题描述】:

我有一个应用程序通过 google play services 7.8 depency in gradle 运行 Google Analytics。它在 Lollipop 设备上运行良好,但在 KitKat (4.4.4) 上启动时崩溃。这是堆栈跟踪:

java.lang.NoClassDefFoundError: com.google.android.gms.common.internal.zzx
        at com.google.android.gms.analytics.internal.zzf.zzX(Unknown Source)
        at com.google.android.gms.analytics.GoogleAnalytics.getInstance(Unknown Source)
        at com.xxx.xxx.getTracker(AppController.java:453)
        at com.xxx.xxx.onCreate(AppController.java:112)
        at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1007)
        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4328)
        at android.app.ActivityThread.access$1500(ActivityThread.java:135)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:136)
        at android.app.ActivityThread.main(ActivityThread.java:5001)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:515)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
        at dalvik.system.NativeStart.main(Native Method)

我不知道这可能来自哪里。任何帮助将不胜感激。

编辑:这是我的顶级 gradle 依赖项

dependencies {
compile 'com.anupcowkur:reservoir:2.1'
compile 'com.google.android.gms:play-services-base:7.8.0'
compile('com.facebook.android:facebook-android-sdk:3.21.1') {
    exclude module: 'bolts-android'
}
compile('com.crashlytics.sdk.android:crashlytics:2.4.0@aar') {
    transitive = true
}
compile 'com.android.support:appcompat-v7:22.2.1'
compile 'com.android.support:multidex:1.0.1'
compile 'com.mcxiaoke.volley:library:1.0.15'
compile 'com.google.code.gson:gson:2.3.1'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'de.greenrobot:eventbus:2.4.0'
compile 'com.splitwise:tokenautocomplete:2.0@aar'
compile 'com.astuetz:pagerslidingtabstrip:1.0.1'
compile 'com.googlecode.libphonenumber:libphonenumber:7.0.6'
compile fileTree(include: 'Parse-*.jar', dir: 'libs')
compile fileTree(include: 'libScanpay/*', dir: 'libs')
compile fileTree(include: 'AppRate_*.jar', dir: 'libs')
compile fileTree(include: 'bolts-android-*.jar', dir: 'libs')
compile 'org.lucasr.twowayview:twowayview:0.1.4'
compile 'com.android.support:support-v4:22.2.1'
compile 'com.google.android.gms:play-services:7.8.0'
compile 'com.google.android.gms:play-services-analytics:7.8.0'
}

【问题讨论】:

  • 这款 KitKat 设备是否安装了 Google Play 服务?
  • 是的,确实如此。我们之前有一个运行 Analytics v2.x 的版本,运行良好
  • 这可能是设置问题。您可能希望将您的 gradle 构建文件与 demo code 进行比较。此外,以前的 Analytics 库依赖于 jar 文件,而最新的使用 gradle 作为依赖项。尝试从项目中删除 jar 文件,看看是否能解决问题。
  • 我已经删除了这些 jars 并添加了分析和 google play 服务作为 gradle 依赖项。参照编辑。

标签: android google-analytics google-play-services noclassdeffounderror android-4.4-kitkat


【解决方案1】:

通过在我的 AppController 中添加 MultiDex.install(context) 来解决。

【讨论】:

    猜你喜欢
    • 2014-08-27
    • 1970-01-01
    • 2019-05-20
    • 1970-01-01
    • 2016-08-26
    • 2013-09-07
    • 2016-05-21
    • 2012-04-06
    相关资源
    最近更新 更多