7

添加useProguard truemultidexEnabled true我的构建类型后,尝试构建时出现此错误:

错误:尚不支持内置类收缩器和 multidex。

compileSdkVersion 23
buildToolsVersion '23.0.2'
defaultConfig {
    applicationId "com.example.android
    minSdkVersion 16
    targetSdkVersion 23
    versionCode gitVersionCode()
    versionName gitVersionName()
    multiDexEnabled true
}

buildTypes {
    debug {
        ...
        useProguard false
        debuggable true
    }
    release {
        ...
        useProguard true
    }

运行 Android Studio 2.0 Beta 5。

除了删除multidex之外还有什么解决方案?

4

4 回答 4

12

useProguard变成了minifyEnabled。尝试以下操作:

android {
    buildTypes {
        release {
            minifyEnabled true
            shrinkResources true
        }
    }
}
于 2016-02-25T13:05:02.107 回答
1

以防万一有人还在调查这个。首先,尝试通过启用代码收缩来避免 64k 限制(并避免使用 multiDexEnabled)。尝试以下操作:

android {
    ...
    buildTypes {
        release {
            shrinkResources true
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'),
                'proguard-rules.pro'
        }
    }
}

如果上述方法不起作用并且您必须使用 miltiDexEnabled 则不要使用 proguard 并且不要尝试缩减资源。尝试以下操作:

buildTypes {
    ...
    release {
        minifyEnabled false
        ...
    }
}
于 2017-03-02T23:55:24.363 回答
0

只需禁用 shrinkResources 和 multiDexEnable,即可解决问题。

shrinkResources false
multiDexEnabled false

此外,如果您有如下 dexoption,请禁用 dex option false:

dexOptions {
        incremental false
    }
于 2017-05-19T05:15:38.767 回答
-2

只需删除 multidexEnabled 并从那里使用 progaurd 并尝试一下。

于 2016-02-26T14:24:54.847 回答