添加expo-av包后React Native裸应用无法编译Release APK求助
解决方案
1. 修复Android SDK未检测问题
- 设置正确的环境变量:
确保ANDROID_HOME或ANDROID_SDK_ROOT指向你的Android SDK安装目录。Mac默认路径是~/Library/Android/sdk,Windows是C:\Users\<你的用户名>\AppData\Local\Android\Sdk。添加到系统环境变量后,重启终端。 - 安装要求的SDK版本:
打开Android Studio → SDK Manager → 选择"SDK Platforms"标签,勾选Android 13 (Tiramisu)的SDK Platform 33.0.0;切换到"SDK Tools"标签,勾选Android SDK Build-Tools 33.0.x,点击应用安装。 - 验证修复:
重新运行react-native doctor,确认Android SDK检测项显示通过。
2. 解决expo-constants的编译错误
- 清理缓存与依赖:
在项目根目录执行:rm -rf node_modules package-lock.json yarn.lock npm install cd android && ./gradlew clean - 统一expo包版本:
检查package.json中expo-av和expo-constants的版本是否一致,比如都使用^49.0.0系列,避免版本不匹配导致的冲突。如果版本不一致,升级或降级到相同大版本后重新安装依赖。 - 手动创建缺失目录:
如果错误提示的/Users/ilya/wrk/react_native/DraftAI/node_modules/expo-constants/android/src/main/assets目录不存在,手动创建该目录,然后重新执行编译命令。 - 升级Kotlin版本:
打开android/build.gradle,找到buildscript下的ext.kotlin_version,升级到1.8.x以上(比如1.8.22),expo包通常要求较高的Kotlin版本。
3. 解决空项目Release APK找不到的问题
- 检查正确的APK路径:
npx react-native build-android --mode=release生成的APK默认路径是android/app/build/outputs/apk/release/app-release.apk,直接前往该目录查看。 - 使用专用编译命令:
若上述命令仍有问题,在android目录执行:
该命令会直接生成Release APK,路径同样为上述位置。./gradlew assembleRelease
内容的提问来源于stack exchange,提问作者kabukiman
相关产品推荐
相关产品推荐

