pluginManagement { def flutterSdkPath = { def properties = new Properties() file("local.properties").withInputStream { properties.load(it) } def flutterSdkPath = properties.getProperty("flutter.sdk") assert flutterSdkPath != null, "flutter.sdk not set in local.properties" return flutterSdkPath }() includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") repositories { // 国内镜像优先(CI runner 在墙内,直连 google/central/gradlePluginPortal 会被 GFW 重置); // 原仓库保留作 fallback。与 deploy-client.yml 的 GOPROXY/PUB 镜像同理。 maven { url "https://maven.aliyun.com/repository/google" } maven { url "https://maven.aliyun.com/repository/public" } maven { url "https://maven.aliyun.com/repository/gradle-plugin" } google() mavenCentral() gradlePluginPortal() } } plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" id "com.android.application" version "8.6.0" apply false id "org.jetbrains.kotlin.android" version "2.2.0" apply false } include ":app"