2015-05-01 95 views
11

我昨晚更新了我的Android SDK(31.4),之后我无法编译我的应用程序。 我得到这个错误:无法执行dex:多个dex文件定义了Lcom/google/android/gms/analytics/internal /命令

[2015-05-01 14:36:24 - Dex Loader] Unable to execute dex: Multiple dex files define Lcom/google/android/gms/analytics/internal/Command$1; 
[2015-05-01 14:36:24 - SoFit] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/google/android/gms/analytics/internal/Command$1; 

我还没有在我的罐子改变任何东西。 这里是我的库结构: enter image description here

我想: - 清洁工程。 - 重新启动eclipse。 - 删除bin文件夹。 - 删除私人图书馆。

我也尝试删除谷歌分析师jar,因为我虽然从最近的谷歌播放服务更新,他们把分析器内的lib。 但它不会因为缺少类而编译。

我的猜测,谷歌播放服务的东西是错误的,但我无法找到什么。

回答

6

谷歌分析师V2不再支持... 我必须使用谷歌服务中包含的V4。

19

尝试从您的目录库中删除“libGoogleAnalyticsServices.jar”,并更新代码As v2不再支持。然后清理它并运行。一切都会好起来的。

+0

这就像一个魅力!我错过了我的gradle.build中依赖关系的第一行是: compile fileTree(include:['* .jar'],dir:'libs') – peresisUser

6

从您的构建中删除libGoogleAnalyticsServices.jar并添加Google Play服务。

要求的最低配置:答案

compile 'com.google.android.gms:play-services-base:7.5.0' 
compile 'com.google.android.gms:play-services-analytics:7.5.0' 
0

部分是白马的:在我的情况的问题出现,因为我更新了谷歌Play服务库,它现在提供Analytics(分析)的最新(V4)版本。然而,删除旧的jar还不够,因为Analytics的v4与之前的版本不太一样(在我的情况下是v2)。我不得不这样做是

  1. 从依赖和库中删除libAnaliticsV2.jar/
  2. 创建一个新的EasyTracker类:​​检查出来here
  3. 快速改变我的应用程序
到的EasyTracker引用
相关问题