You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

Android Studio从android-ndk-r27c升级到r29构建失败求助

解决NDK r29切换后“NDK is not installed”错误

核心原因:Gradle插件与NDK版本不兼容

你的Gradle插件(AGP)7.2.2版本兼容的NDK版本上限远低于r29。NDK r29需要至少AGP 8.2及以上版本才能适配,旧版AGP无法识别r29的目录结构和配置规范,因此抛出该错误。

解决方案

方案1:升级Gradle插件与Gradle版本

  1. 修改项目根目录build.gradle中的AGP版本为8.2.0及以上:
    dependencies {
        classpath 'com.android.tools.build:gradle:8.2.0'
    }
    
  2. 同步Gradle后,按提示升级Gradle到对应兼容版本(AGP 8.2需Gradle 8.0+)。
  3. 移除local.properties中的ndkDir配置,改用AGP自动管理:在模块build.gradle中指定NDK版本:
    android {
        ndkVersion "29.0.11711670" // 对应NDK r29的完整版本号
    }
    

方案2:降级NDK到AGP7.2.2支持的版本

若暂不升级AGP,可将NDK降级到AGP7.2.2兼容的最高版本(如NDK r25c),同时:

  • 修正local.properties中的ndkDir路径到对应版本目录
  • 调整CMAKE_C_COMPILERCMAKE_CXX_COMPILER的完整路径(示例:C:\android-ndk-r25c\toolchains\llvm\prebuilt\windows-x86_64\bin\clang.exe

额外优化建议

  1. 避免手动指定编译器路径,让AGP自动关联NDK内置编译器,减少配置错误。
  2. 匹配CMake与AGP版本:AGP7.2.2推荐使用CMake 3.22.1,高版本CMake可能与旧AGP不兼容。

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

火山引擎 最新活动