配置:google_sign_in_Android项目失败,求兼容io.flutter:flutter.gradle版本
问题解决方案
核心原因
问题源于Flutter Gradle插件版本与Gradle/AGP版本不兼容,且项目缺少Flutter官方Maven仓库配置,导致无法拉取io.flutter:flutter.gradle依赖。
一、修改项目根目录的build.gradle.kts
1. 调整Flutter Gradle插件版本
Gradle 8.12 + AGP 8.7.0 需要搭配Flutter Gradle插件2.0.0及以上版本,替换原插件声明:
plugins { id("com.android.application") version "8.7.0" id("kotlin-android") // 替换为与本地Flutter SDK匹配的高版本插件,比如2.2.0(需和本地Flutter版本对应) id("dev.flutter.flutter-gradle-plugin") version "2.2.0" apply false }
注:插件版本需与本地Flutter SDK版本兼容,执行flutter --version查看Flutter版本,对应关系参考:Flutter 3.16+ 对应插件2.0.0+,Flutter 3.22+ 对应插件2.2.0+
2. 添加Flutter仓库配置
在plugins块下方添加仓库配置,确保能拉取Flutter相关依赖:
allprojects { repositories { google() mavenCentral() // 添加Flutter官方Maven仓库 maven { url = uri("https://storage.googleapis.com/download.flutter.io") } } }
二、修改项目根目录的settings.gradle.kts
确保配置中包含Flutter插件的仓库源及正确项目结构:
pluginManagement { repositories { google() mavenCentral() // 添加Flutter插件仓库 maven { url = uri("https://storage.googleapis.com/download.flutter.io") } gradlePluginPortal() } } dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() maven { url = uri("https://storage.googleapis.com/download.flutter.io") } } } rootProject.name = "cashark" include(":app") // 确保包含google_sign_in_android模块(自动生成则无需手动添加) include(":google_sign_in_android")
三、额外验证步骤
- 执行
flutter clean清理Flutter缓存,再执行./gradlew cleanBuildCache - 在VS Code中通过
Ctrl+Shift+P打开命令面板,选择Flutter: Select SDK指定正确的本地Flutter SDK路径 - 检查
local.properties文件中是否包含正确的Flutter SDK路径:
flutter.sdk=/path/to/your/flutter/sdk
内容的提问来源于stack exchange,提问作者Tiago
相关产品推荐
相关产品推荐

