You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

整合TensorFlow与DJI SDK时出现Unable to merge dex错误的排查咨询

这种dex合并失败的问题在整合不同第三方SDK时很常见,结合你的DJI和TensorFlow整合场景,你可以从以下几个方向逐步调试:

1. 排查依赖冲突与重复依赖

这是导致“Unable to merge dex”最常见的原因,你可以通过以下步骤定位:

  • 执行Gradle命令生成依赖树:
    # Mac/Linux
    ./gradlew app:dependencies
    # Windows
    gradlew.bat app:dependencies
    
    仔细查看输出,重点关注这些冲突点:
    • Google Play Services:你的DJI配置里同时引入了完整包com.google.android.gms:play-services:9.2.0和拆分模块(ads/auth/gcm),这会导致大量重复类。建议删除完整包依赖,只保留DJI实际需要的拆分模块。
    • Support库版本:确保所有com.android.support开头的依赖(appcompat、design、multidex)版本完全一致,你的DJI用的是23.3.0,TensorFlow示例如果有其他support库也要统一成这个版本。
    • HttpClient依赖:TensorFlow配置里引入了org.apache.httpcomponents:httpclient:4.5.4,检查DJI SDK是否也依赖了旧版本的httpclient,若有则需要统一版本或排除冲突的子依赖。

2. 确认MultiDex配置适配Gradle 3.0.1

虽然你已经开启了multiDexEnabled true,但Gradle 3.x对MultiDex的配置有一些细节要求:

  • 升级multidex依赖到适配版本:把com.android.support:multidex:1.0.1改成com.android.support:multidex:1.0.3(这个版本更兼容Gradle 3.x)。
  • 确保Application类正确配置:如果你的项目有自定义Application,让它继承MultiDexApplication;如果不能继承,就在attachBaseContext方法中添加:
    @Override
    protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
        MultiDex.install(this);
    }
    

3. 调整Gradle插件、BuildTools与CompileSDK的兼容性

你的项目现在混合了不同版本的Gradle配置,这很容易引发问题:

  • BuildToolsVersion匹配CompileSDK:你用的CompileSDK是23,但TensorFlow的BuildTools是26.0.2,26.x版本对应CompileSDK 26,建议把BuildToolsVersion改成25.0.0(和DJI原配置一致,兼容CompileSDK 23)。
  • 验证DJI SDK与Gradle 3.0.1的兼容性:DJI SDK 4.5.1发布时Gradle 3.x还没普及,可能存在兼容性问题。可以尝试临时把Gradle插件版本降回2.3.3(接近DJI原配置的2.3.2),同时保持BuildToolsVersion为25.0.0,看看是否能正常构建,以此排除版本兼容问题。

4. 清理缓存并重建项目

有时候缓存会导致奇怪的dex合并错误,试试以下操作:

  • 执行命令清理项目:
    # Mac/Linux
    ./gradlew clean
    # Windows
    gradlew.bat clean
    
  • 删除项目根目录的.gradle文件夹,以及app模块下的build文件夹。
  • 重新同步Gradle并构建项目。

5. 检查本地Jar包重复

查看项目的libs文件夹,确认是否存在重复的Jar文件,或者同时通过compile fileTree和远程依赖引入了同一个库(比如DJI的SDK Jar和远程依赖com.dji:dji-sdk:4.5.1重复),如果有则删除重复项。

内容的提问来源于stack exchange,提问作者John Kim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:03:14