Skip to content

Flutter / Dart pub 换源加速

Flutter 开发在国内的两大卡点:flutter pub get 拉包慢、Flutter SDK / engine 下载慢。两个都靠环境变量换镜像解决。

一、配置镜像环境变量(核心)

设置两个环境变量,分别管pub 包Flutter 存储(SDK/engine):

Linux / macOS(写进 ~/.zshrc / ~/.bashrc):

bash
export PUB_HOSTED_URL="https://pub.flutter-io.cn"
export FLUTTER_STORAGE_BASE_URL="https://storage.flutter-io.cn"

Windows PowerShell(临时)或在系统环境变量里永久添加:

powershell
$env:PUB_HOSTED_URL = "https://pub.flutter-io.cn"
$env:FLUTTER_STORAGE_BASE_URL = "https://storage.flutter-io.cn"

flutter-io.cn 是 Flutter 中国团队维护的官方镜像。设置后 flutter pub getflutter doctor、SDK 相关下载都会走它。

二、验证

bash
echo $PUB_HOSTED_URL          # 确认变量生效
flutter pub get               # 观察拉包速度

新开的终端要确保加载了配置(source ~/.zshrc)。

三、其他可选镜像

用途镜像
pub 包(PUB_HOSTED_URL)https://pub.flutter-io.cnhttps://mirrors.tuna.tsinghua.edu.cn/dart-pub
Flutter 存储(STORAGE)https://storage.flutter-io.cn

四、Android 相关依赖也慢?

Flutter 项目构建 APK 时,还会拉 Gradle、Android 依赖,这部分归 Gradle/Maven 管:

五、CI / Docker 里使用

在 CI 或 Docker 构建 Flutter 项目时,把这两个变量写进环境即可:

dockerfile
ENV PUB_HOSTED_URL=https://pub.flutter-io.cn
ENV FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

常见问题

Q:设了变量 flutter pub get 还是慢?

  • 确认变量在当前终端生效;IDE(VS Code / Android Studio)内置终端可能没继承,需重启 IDE。

Q:flutter upgrade / 下 engine 还是慢?

  • 确认 FLUTTER_STORAGE_BASE_URL 已设置——它专门管 SDK/engine 下载。

Q:企业内网 / 需要代理?

  • 镜像无效时给 git 和 shell 配 代理

小结

  • 两个环境变量:PUB_HOSTED_URL(包)+ FLUTTER_STORAGE_BASE_URL(SDK)。
  • IDE 内置终端记得重启以继承变量。
  • 构建 Android 产物的慢是 Gradle/SDK 的事,另见对应文章。

本文仅供技术学习与研究,请遵守所在国家/地区法律法规。

本站为技术学习交流站点,与 GitHub, Inc. 无任何隶属或官方关系。所有内容仅供技术研究与学习,请遵守所在国家/地区的法律法规。