settings.gradle 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. pluginManagement {
  2. def flutterSdkPath = {
  3. def properties = new Properties()
  4. file("local.properties").withInputStream { properties.load(it) }
  5. def flutterSdkPath = properties.getProperty("flutter.sdk")
  6. assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
  7. return flutterSdkPath
  8. }
  9. settings.ext.flutterSdkPath = flutterSdkPath()
  10. includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle")
  11. repositories {
  12. // 国内镜像优先(本环境 Maven Central / Gradle 插件中心受限)
  13. maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }
  14. maven { url 'https://maven.aliyun.com/repository/google' }
  15. maven { url 'https://maven.aliyun.com/repository/central' }
  16. google()
  17. mavenCentral()
  18. gradlePluginPortal()
  19. }
  20. }
  21. plugins {
  22. // Flutter 3.29 起必须用声明式 flutter-plugin-loader(替代命令式 app_plugin_loader)
  23. id "dev.flutter.flutter-plugin-loader" version "1.0.0"
  24. id "com.android.application" version "8.1.0" apply false
  25. // Stripe Android SDK 21.x 以 Kotlin 2.1 编译,KGP 需 ≥2.1(1.8 读不了 2.1 的 metadata)
  26. id "org.jetbrains.kotlin.android" version "2.1.0" apply false
  27. }
  28. dependencyResolutionManagement {
  29. // 统一用 settings 声明的仓库(含 includeBuild 的 flutter_tools/gradle),镜像优先。
  30. // PREFER_SETTINGS 模式下 project 级仓库(含 flutter.groovy 经 rootProject.allprojects 注入的
  31. // download.flutter.io)会被忽略,故 flutter 引擎 embedding 仓库必须在此显式声明,
  32. // 否则插件项目(如 alipay_kit_android)解析不到 io.flutter:flutter_embedding_*。
  33. repositoriesMode = RepositoriesMode.PREFER_SETTINGS
  34. repositories {
  35. maven { url 'https://maven.aliyun.com/repository/google' }
  36. maven { url 'https://maven.aliyun.com/repository/central' }
  37. // Flutter 引擎/embedding 仓库(与 FLUTTER_STORAGE_BASE_URL 一致,本环境为国内镜像)
  38. maven { url "${System.getenv('FLUTTER_STORAGE_BASE_URL') ?: 'https://storage.googleapis.com'}/download.flutter.io" }
  39. google()
  40. mavenCentral()
  41. }
  42. }
  43. include ":app"