React Native Android:添加vision-camera后compileSdkVersion构建错误解决
解决React Native添加react-native-vision-camera后的构建错误
问题本质
错误提示依赖androidx.camera:camera-view:1.0.0-alpha27要求最低编译SDK为30,但系统检测到当前模块的compileSdkVersion是29——尽管你根目录的android/build.gradle配置了31,这通常是模块级配置未同步或缓存残留导致的版本冲突。
解决方案
1. 同步app模块的compileSdk配置
打开android/app/build.gradle,确认内部的compileSdkVersion与根目录配置一致:
android { // 要么引用根目录的全局变量 compileSdkVersion rootProject.ext.compileSdkVersion // 要么直接指定31 // compileSdkVersion 31 defaultConfig { minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion // ...其他默认配置 } }
如果此处写死了29,直接修改为31即可。
2. 强制统一所有子模块的编译版本
在根目录的android/build.gradle中添加如下配置,确保所有第三方依赖和子模块都使用统一的compileSdk:
subprojects { afterEvaluate { project -> if (project.hasProperty("android")) { android { compileSdkVersion rootProject.ext.compileSdkVersion buildToolsVersion rootProject.ext.buildToolsVersion } } } }
这会覆盖所有子模块的独立配置,避免依赖自行指定的版本与你的全局配置冲突。
3. 清理构建缓存
执行命令清除旧缓存,避免残留配置干扰:
# 清理Gradle构建缓存 ./gradlew clean # 清理React Native缓存(可选) npx react-native clean
4. 升级camera依赖版本(可选)
如果上述步骤无效,可强制升级androidx.camera相关依赖到更兼容的版本,在根目录android/build.gradle的dependencies块中添加:
dependencies { implementation 'androidx.camera:camera-view:1.2.0' implementation 'androidx.camera:camera-core:1.2.0' implementation 'androidx.camera:camera-camera2:1.2.0' }
验证
完成配置后重新执行构建:
npx react-native run-android
内容的提问来源于stack exchange,提问作者gkeenley
相关产品推荐
相关产品推荐

