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

如何在Java 11环境下为安卓项目生成native-debug-symbols文件

安卓项目Java版本与native调试符号生成冲突解决方案

Java 11环境下无法生成native-debug-symbols的核心原因是当前使用的Android Gradle插件(AGP)版本与NDK 22.1存在兼容bug,按以下步骤操作即可解决冲突:

  • 固定Java版本为11,禁止回退到1.8版本。你当前使用的compileSdk 31搭配对应AGP 7.0+版本强制要求Java 11运行环境,回退1.8必然触发Gradle兼容报错。
  • 调整app层级build.gradle的buildTypes配置,你当前仅在release构建类型中配置了调试符号输出,需给debug构建类型也补充对应配置,修改后区块代码如下:
buildTypes {
    debug {
        ndk {
            debugSymbolLevel 'FULL'
        }
    }
    release {
        minifyEnabled true
        shrinkResources true
        signingConfig signingConfigs.debug
        ndk {
            debugSymbolLevel 'FULL'
        }
        externalNativeBuild {
            cmake {
                version = "3.18.1"
            }
        }
    }
}
  • 核对Gradle与AGP版本匹配关系,compileSdk 31对应的稳定兼容组合为:AGP 7.0.4 + Gradle 7.0.2,可在根目录build.gradle中修改AGP版本,在gradle/wrapper/gradle-wrapper.properties中修改Gradle发行版地址。
  • 清理重建项目,依次执行命令./gradlew clean、./gradlew assembleDebug,构建完成后native-debug-symbols压缩包会输出在app/build/outputs/native-debug-symbols/debug目录下。
  • 若仍生成失败,可使用NDK自带工具手动提取调试符号,执行命令:${NDK安装路径}/toolchains/llvm/prebuilt/[操作系统平台]/bin/llvm-objcopy --only-keep-debug 目标so文件路径 输出符号so文件路径。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 00:57:03