当前位置: 首页 > news >正文

Flutter镜像替换

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

阿里云镜像(推荐)
将 Google 仓库替换为:
https://maven.aliyun.com/repository/google

华为云镜像
替换为:
https://repo.huaweicloud.com/repository/maven/

二、具体配置方法
1. 全局 Gradle 配置(推荐,影响所有项目)

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

Windows:C:\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' }
maven { url 'https://maven.aliyun.com/repository/public/' }# 若需要代理(可选)
systemProp.http.proxyHost=127.0.0.1
systemProp.http.proxyPort=你的代理端口
systemProp.https.proxyHost=127.0.0.1
systemProp.https.proxyPort=你的代理端口

2. 项目级配置(仅当前项目生效)

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

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

找到 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" }
}
}
AI写代码

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(或对应配置文件)生效。

三、验证配置是否生效
执行 flutter clean 清除缓存。

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

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

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

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

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

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

http://www.xdnf.cn/news/1227655.html

相关文章:

  • LVGL + ESP-Brookesia 在Windows下的编译和运行
  • Flutter基础知识
  • 关于Web前端安全防御CSRF攻防的几点考虑
  • 常用git命令
  • 编译器工作原理的显微镜级拆解
  • 开箱即用的Next.js SSR企业级开发模板
  • 什么是doris
  • Typora v1.10.8 好用的 Markdown 编辑器
  • DreamBoards 借助 DreamHAT+ 雷达插件为 Raspberry Pi 提供 60GHz 毫米波雷达
  • 思途JSP学习 0801
  • 《软件测试与质量控制》实验报告一 测试用例设计
  • 逻辑回归参数调优实战指南
  • JS核心语法与实战技巧
  • 【读文献】Capacitor-drop AC-DC
  • 计数组合学7.10(舒尔函数的组合定义)
  • ls hgfs提示ls: cannot access ‘hgfs‘: Permission denied
  • Python 项目路径配置完全指南
  • 如何优雅删除Docker镜像和容器(保姆级别)
  • 开源工具FossFLOW,绘制技术图表
  • linux中posix消息队列的使用记录
  • Cesium性能优化
  • windows系统安装文生图大模型Stable diffusion V3.5 large(完整详细可用教程)
  • 第15讲——微分方程
  • 分类预测 | Matlab实现CPO-PNN冠豪猪算法优化概率神经网络多特征分类预测
  • 操作系统-lecture4(进程的调度)
  • ubuntu22.04系统入门 linux入门(二) 简单命令 多实践以及相关文件管理命令
  • 分布在背侧海马体CA1区域的位置细胞(place cells)对NLP中的深层语义分析的积极影响和启示
  • 设计模式1:创建型模式
  • Java 学习笔记:常用类、String 与日期时间处理
  • 在纯servlet项目中,使用@WebFilter定义了多个filter,如何设置filter的优先级