.dex文件中的方法引用数不能超过64K

时间:2016-09-05 08:36:39

标签: android

我参加了一个新的android项目。它在设备上运行良好。然后我添加了 -

dependencies {
   ....
   ....
   compile 'com.google.android.gms:play-services:9.4.0'
}

现在,当我尝试运行该应用时,它会给出 -

Error- The number of method references in a .dex file cannot exceed 64K.

任何帮助?

3 个答案:

答案 0 :(得分:0)

你有两种方法可以解决这个问题。

  1. 启用MultiDex

    android {
        compileSdkVersion 22
        buildToolsVersion "23.0.0"
    
         defaultConfig {
             minSdkVersion 14 //lower than 14 doesn't support multidex
             targetSdkVersion 22
    
             // Enabling multidex support.
             multiDexEnabled true
         }
    }
    
  2. 使用您的应用程序中所需的特定播放服务,而不是整个包,如下所述:

    Add dependency for specific Play service from this list

答案 1 :(得分:0)

这意味着您项目中的方法超过65535。 你可以看到这个:

Configure Apps with Over 64K Methods

答案 2 :(得分:0)

compile 'com.google.android.gms:play-services:9.4.0'

将从Google Play服务加载所有方法和包。这实际上是添加依赖项的错误方法。如果您想使用Google Play服务中的特定内容,请仅添加该特定包。

例如:compile 'com.google.android.gms:play-services-location:9.4.0'

这将仅加载位置包,因此它将减少方法引用。