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

React Native构建失败报错‘compileSdkVersion未指定’求助

解决「compileSdkVersion is not specified」报错的方案

1. 修复环境变量配置错误

你的.bash_profile里的PATH配置存在变量引用错误,ANDROID_SDK_ROOT前面缺少$符号,导致系统无法正确识别SDK路径。修改后的配置如下:

export ANDROID_SDK_ROOT=$HOME/Library/Android/sdk
export ANDROID_HOME=$ANDROID_SDK_ROOT
export PATH=$PATH:$ANDROID_SDK_ROOT/emulator
export PATH=$PATH:$ANDROID_SDK_ROOT/platform-tools
export PATH=$PATH:$ANDROID_SDK_ROOT/tools
export PATH=$PATH:$ANDROID_SDK_ROOT/tools/bin

修改后执行source ~/.bash_profile让配置生效,再通过echo $PATH确认路径是否正确加载。

2. 明确指定项目的compileSdkVersion

Expo裸工作流项目需要在安卓模块的配置文件中明确指定编译SDK版本,操作如下:

  • 打开项目根目录下的android/build.gradle文件
  • 在buildscript的ext块中添加(如果没有则创建)compileSdkVersion等配置,使用你已安装的android-33版本:
buildscript {
    ext {
        buildToolsVersion = "33.0.0"
        minSdkVersion = 21
        compileSdkVersion = 33
        targetSdkVersion = 33
        // React Native 0.70+版本需指定kotlin版本
        kotlinVersion = "1.8.0"
    }
    // 保留文件中原有其他代码
}
  • 保存文件后,回到项目根目录执行./gradlew clean清理缓存,再重新运行npm run android

3. 检查SDK组件完整性

虽然你已安装android-31和android-33-ext,仍需确认对应组件是否完整:

  • 打开Android Studio的SDK Manager
  • 切换到「SDK Tools」标签,确保勾选与compileSdkVersion 33匹配的Build Tools(如33.0.0)
  • 确认Platform Tools为最新版本,如有更新则安装

4. 验证虚拟设备兼容性

确保你的虚拟设备系统版本(API级别)不低于项目指定的minSdkVersion(上述配置为21,即Android 5.0),若当前虚拟设备API级别过低,需切换或创建符合要求的虚拟设备。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 19:20:27