Flutter 替换镜像源

一、核心镜像替换(针对 Maven 仓库)

Flutter 依赖的 Google Maven 仓库(https://maven.google.comhttps://dl.google.com/dl/android/maven2)可替换为国内镜像,常见的有:

  1. 阿里云镜像 (推荐)

    将 Google 仓库替换为:
    https://maven.aliyun.com/repository/google

  2. 华为云镜像

    替换为:
    https://repo.huaweicloud.com/repository/maven/

二、具体配置方法

  1. 全局 Gradle 配置(推荐,影响所有项目)

修改 Gradle 全局配置文件,让所有 Flutter/Android 项目默认使用镜像:

  • WindowsC:\Users\<你的用户名>\.gradle\gradle.properties

  • Mac/Linux~/.gradle/gradle.properties

在文件中添加以下内容(配置代理和镜像):

复制代码
# 阿里云镜像配置
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/jcenter' }
maven { url 'https://maven.aliyun.com/nexus/content/groups/public' }

# 若需要代理(可选)
systemProp.http.proxyHost=127.0.0.1
systemProp.http.proxyPort=你的代理端口
systemProp.https.proxyHost=127.0.0.1
systemProp.https.proxyPort=你的代理端口
  1. 项目级配置(仅当前项目生效)

如果只想针对单个 Flutter 项目修改,需编辑项目中的 Gradle 配置:

  1. 打开 Flutter 项目目录下的 android/build.gradle 文件。

  2. 找到 allprojects 块中的 repositories,替换 Google 仓库地址:

    allprojects {
    repositories {
    // 替换原 Google 仓库
    maven { url 'https://maven.aliyun.com/repository/google' }
    maven { url 'https://maven.aliyun.com/repository/jcenter' }
    mavenCentral()
    // 保留其他必要仓库(如本地仓库)
    maven { url "$flutterRoot/packages/flutter_tools/gradle/maven_repo" }
    jcenter() { url "https://maven.aliyun.com/repository/jcenter" }
    }
    }

  3. Flutter 引擎镜像(针对 flutter doctor 检查的引擎资源)

flutter doctor 卡在下载 Flutter 引擎(如 https://storage.googleapis.com/ 相关资源),可配置 Flutter 镜像源:

  • 临时生效(每次终端执行):

    复制代码
    # 阿里云 Flutter 镜像
    export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
    export PUB_HOSTED_URL=https://pub.flutter-io.cn
  • 永久生效(推荐):

    • Windows:在 "环境变量" 中添加上述两个变量(值同上)。

    • Mac/Linux:编辑 ~/.bash_profile~/.zshrc,添加上述两行,然后执行 source ~/.bash_profile(或对应配置文件)生效。

三、验证配置是否生效

  1. 执行 flutter clean 清除缓存。

  2. 重新运行 flutter doctor,观察是否仍有 Google API 相关错误。

  3. 若涉及项目依赖下载,可执行 flutter pub getcd android && ./gradlew clean(Mac/Linux)/ gradlew clean(Windows)测试。

四、注意事项

  1. 镜像源可能存在同步延迟,若某镜像失效,可尝试切换其他镜像(如华为云、腾讯云镜像)。

  2. 部分特殊依赖(如 Google Play 服务相关)可能必须访问官方仓库,此时需配合合规代理使用。

  3. 配置后若出现依赖冲突,可删除项目的 android/.gradle 缓存目录后重试。

通过以上配置,大部分 flutter doctor 中的 Google API 访问问题均可解决。

相关推荐
renke33646 分钟前
Flutter for OpenHarmony:构建一个 Flutter 色彩调和师游戏,RGB 空间探索、感知色差计算与视觉认知训练的工程实现
flutter·游戏
王码码203513 分钟前
Flutter for OpenHarmony 实战之基础组件:第三十一篇 Chip 系列组件 — 灵活的标签化交互
android·flutter·交互·harmonyos
ujainu2 小时前
Flutter + OpenHarmony 实现经典打砖块游戏开发实战—— 物理反弹、碰撞检测与关卡系统
flutter·游戏·openharmony·arkanoid·breakout
微祎_2 小时前
构建一个 Flutter 点击速度测试器:深入解析实时交互、性能度量与响应式 UI 设计
flutter·ui·交互
王码码20352 小时前
Flutter for OpenHarmony 实战之基础组件:第二十七篇 BottomSheet — 动态底部弹窗与底部栏菜单
android·flutter·harmonyos
ZH15455891313 小时前
Flutter for OpenHarmony Python学习助手实战:Web开发框架应用的实现
python·学习·flutter
晚霞的不甘3 小时前
Flutter for OpenHarmony 构建简洁高效的待办事项应用 实战解析
flutter·ui·前端框架·交互·鸿蒙
百锦再3 小时前
Vue高阶知识:利用 defineModel 特性开发搜索组件组合
前端·vue.js·学习·flutter·typescript·前端框架
廖松洋(Alina)3 小时前
【收尾以及复盘】flutter开发鸿蒙APP之成就徽章页面
flutter·华为·开源·harmonyos·鸿蒙
ZH15455891314 小时前
Flutter for OpenHarmony Python学习助手实战:机器学习算法实现的实现
python·学习·flutter