Share_plus插件报错:调用需API 22,修改minSdkVersion无效
问题根源
share_plus插件的模块可能硬编码了较低的minSdkVersion,即使你在app模块设置了23,插件自身的配置仍使用旧值(比如16),导致lint检查时触发Intent#createChooser的API版本冲突。
解决方案
1. 强制统一所有子模块的minSdkVersion
在项目根目录的android/build.gradle文件中添加以下配置,强制所有依赖模块(包括share_plus)使用你的minSdk版本:
subprojects { afterEvaluate { project -> if (project.hasProperty('android')) { android { defaultConfig { minSdkVersion 23 } } } } }
添加后重新执行./gradlew clean build -warning-mode all验证。
2. 升级share_plus到最新兼容版本
旧版本的share_plus可能未适配高minSdk,在pubspec.yaml中更新插件到最新稳定版:
dependencies: share_plus: ^7.2.0 # 替换为pub.dev上的最新版本号
执行flutter pub get拉取新依赖后再重新构建。
3. 临时禁用lint检查(紧急场景用)
如果前两种方法无法快速生效,可临时在android/app/build.gradle中禁用相关lint规则:
android { lintOptions { disable 'NewApi' } }
注意:此方法只是绕过检查,不解决根本问题,仅建议在紧急发布时临时使用。
内容的提问来源于stack exchange,提问作者cassio
相关产品推荐
相关产品推荐

