Flutter项目minSdkVersion版本冲突报错:原因及修改方法咨询
错误原因
你引入的cloud_firestore库要求最低Android SDK版本为19,但你的Flutter项目当前配置的minSdkVersion是16(通过flutter.minSdkVersion引用的默认值)。由于该库可能使用了Android 16及以下版本不支持的API,版本不匹配导致构建失败。
解决方法
推荐优先采用第一种方式,第二种仅作为临时方案(存在运行风险):
方式一:升级项目的minSdkVersion到19
方法1:全局统一配置版本
找到项目根目录下的android/local.properties文件,添加或修改以下内容:
flutter.minSdkVersion=19
这样android/app/build.gradle里的minSdkVersion flutter.minSdkVersion会自动引用19,保持项目版本配置的统一性。
方法2:直接修改模块配置
打开android/app/build.gradle,在defaultConfig块中把minSdkVersion的取值从flutter.minSdkVersion改为19:
defaultConfig { applicationId "cmon.com" // 替换原有的flutter.minSdkVersion为19 minSdkVersion 19 targetSdkVersion flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName }
方式二:强制兼容(不推荐)
如果必须保留minSdkVersion为16,可以通过tools:overrideLibrary强制构建通过,但可能导致低版本Android设备运行时崩溃:
- 打开
android/app/src/main/AndroidManifest.xml,在<manifest>标签中添加tools命名空间,然后在<uses-sdk>标签里添加强制兼容配置:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools"> <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="你的targetSdk版本号" tools:overrideLibrary="io.flutter.plugins.firebase.firestore"/> <!-- 其他Manifest内容 --> </manifest>
内容的提问来源于stack exchange,提问作者Aswin B
相关产品推荐
相关产品推荐

