ERROR: Dex writing phase: classes.dex has too many IDs. Try using multi-dex

ERROR: Dex writing phase: classes.dex has too many IDs. Try using multi-dex

我正在将我的应用程序集成到 Android AOSP 源代码中进行编译。我遇到了如下问题:

错误:Dex 写入阶段:classes.dex ID 过多。尝试使用 multi-dex

它在 android 工作室中运行良好。我的应用设置如下:

    public class App extends MultiDexApplication{
   @Override
    protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
        MultiDex.install(this);
    }
    }

设置在mainifest.xml

android:name=".App"

dependencies{
    compile 'com.android.support:multidex:1.0.1'
}
defaultConfig {
  multiDexEnabled true
}

我在这里找到了解决方案: How to enable mulit dex ,when building apk in AOSP?

但是没用。

我的 mk 文件看起来像:

LOCAL_PROGUARD_ENABLED := disabled
LOCAL_DX_FLAGS := --multi-dex --main-dex-list=$(mainDexList) --minimal-main-dex

LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := multidex-1.0.1:libs/multidex-1.0.1.aar

有什么帮助吗?提前致谢。

在您的 mk 文件中添加了以下两行。应该可以。

  LOCAL_DX_FLAGS := --multi-dex --main-dex-list=$(mainDexList) --minimal-main-dex
  LOCAL_JACK_FLAGS += --multi-dex native