Android Studio升级后Flutter构建依赖错误求助
解决Flutter构建APK时的
Cannot query the value of this provider错误 问题核心
升级Android Studio到Ladybug版本后,项目构建APK时出现依赖解析错误,涉及url_launcher_android等插件,根源是Java编译版本与插件要求不匹配,同时Gradle和Android Gradle Plugin(AGP)版本未同步适配。
解决方案步骤
1. 将项目编译版本统一为Java 17
修改app/build.gradle中的编译配置,替换原有Java 8设置:
android { // ... 保留其他原有配置 compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } kotlinOptions { jvmTarget = '17' } // ... 保留其他原有配置 }
2. 升级Gradle与AGP版本适配
- 修改
settings.gradle中的插件版本,匹配Java 17和Flutter 3.24版本:
plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" id "com.android.application" version "7.4.2" apply false id "org.jetbrains.kotlin.android" version "1.8.22" apply false }
- 修改
gradle-wrapper.properties中的Gradle版本:
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-all.zip
3. 清理缓存并重新构建
执行以下命令彻底清理缓存后重新构建:
flutter clean rm -rf android/.gradle android/build flutter pub get flutter build apk --release
也可以在Android Studio中选择File > Invalidate Caches... > Invalidate and Restart完成缓存清理。
4. 验证Java路径(可选)
确保local.properties中指定的JDK路径为Android Studio自带的Java 17:
org.gradle.java.home=D:\\Installed\\AndroidStudio\\jbr
原因说明
升级Android Studio后,IDE默认使用Java 17作为运行时,但项目仍配置为Java 8编译,导致share_plus等依赖Java 17的插件在编译时出现依赖解析异常。同步升级编译版本和Gradle/AGP版本后,即可解决插件与Java版本的兼容性冲突。
内容的提问来源于stack exchange,提问作者Somnath Dash
相关产品推荐
相关产品推荐

