在中国网络环境下使用 Flutter
info提示
如果你正在中国的网络环境下配置 Flutter,请参考 在中国网络环境下使用 Flutter 文档.
为加快 Flutter 在中国的下载以及安装速度,请考虑使用 镜像站点 和 镜像
feedback重点提醒
Flutter 团队无法验证它们的可靠性和安全性。
只有 在你 信任 提供商的情况下才使用镜像站点。
使用 Flutter 镜像站点
#
China Flutter User Group (CFUG) 维护着一个 Flutter 简体中文网站
https://flutter.cn 以及镜像。其他镜像可在 本文末尾 找到。
配置你的机器使用镜像站点
#
在中国安装和使用 Flutter,请使用可信的 Flutter 镜像。这需要在你的机器上设置两个环境变量。
以下所有示例均假定你正在使用 CFUG 的镜像。
设置你的机器使用镜像站点:
Windows
macOS
Linux
以下步骤需要使用 PowerShell。
在 PowerShell 中打开新窗口,准备运行 shell 命令。
将 PUB_HOSTED_URL 设置为镜像站点。
$ $env:PUB_HOSTED_URL="https://pub.flutter-io.cn"
content_copy
将 FLUTTER_STORAGE_BASE_URL 设置为镜像站点。
$ $env:FLUTTER_STORAGE_BASE_URL="https://storage.flutter-io.cn"
content_copy
从镜像站点下载 Flutter 压缩包。
例如:要获取 CFUG 的 Flutter SDK,请访问 Flutter SDK 归档列表,并下载适用于你的平台和架构的 SDK。
创建一个可以安装 Flutter 的文件夹,然后进入该文件夹。可以考虑类似 $env:USERPROFILE\dev 的路径。
$ New-Item -Path "$env:USERPROFILE\dev" -ItemType Directory; cd "$env:USERPROFILE\dev"
content_copy
从 zip 压缩文件中解压提取 SDK。
本示例假定你下载了 Windows 版本的 Flutter SDK。你需要将以下路径替换为你下载的文件及其版本的路径。
$ Expand-Archive .\flutter_windows_3.35.5-stable.zip
content_copy
将 Flutter 添加到你的 PATH 环境变量中。
$ $env:PATH = $pwd.PATH + "\flutter\bin",$env:PATH -join ";"
content_copy
开始使用 Flutter 进行开发。
完成上述步骤后,
Flutter 将在当前终端窗口中,从 flutter-io.cn 获取 package 和构建产物。
要在所有终端上永久设置这些值,请按照说明将 Flutter 添加到 PATH 环境变量,同时还需要添加 PUB_HOSTED_URL 和 FLUTTER_STORAGE_BASE_URL
环境变量。
在终端中打开新窗口,准备运行 shell 命令。
将 PUB_HOSTED_URL 设置为镜像站点。
$ export PUB_HOSTED_URL="https://pub.flutter-io.cn"
content_copy
将 FLUTTER_STORAGE_BASE_URL 设置为镜像站点。
$ export FLUTTER_STORAGE_BASE_URL="https://storage.flutter-io.cn"
content_copy
从镜像站点下载 Flutter 压缩包。
例如:要获取 CFUG 的 Flutter SDK,请访问 Flutter SDK 归档列表,并下载适用于你的平台和架构的 SDK。
创建一个可以安装 Flutter 的文件夹,然后进入该文件夹。可以考虑类似 ~/dev 的路径。
$ mkdir ~/dev; cd ~/dev
content_copy
从 zip 压缩文件中解压提取 SDK。
本示例假定你下载了 macOS 版本的 Flutter SDK。你需要将以下路径替换为你下载的文件及其版本的路径。
$ unzip flutter_macos_3.35.5-stable.zip
content_copy
将 Flutter 添加到你的 PATH 环境变量中。
$ export PATH="$PWD/flutter/bin:$PATH"
content_copy
开始使用 Flutter 进行开发。
完成上述步骤后,
Flutter 将在当前终端窗口中,从 flutter-io.cn 获取 package 和构建产物。
要在所有终端上永久设置这些值,请按照说明将 Flutter 添加到 PATH 环境变量,同时还需要添加 PUB_HOSTED_URL 和 FLUTTER_STORAGE_BASE_URL
环境变量。
在终端中打开新窗口,准备运行 shell 命令。
将 PUB_HOSTED_URL 设置为镜像站点。
$ export PUB_HOSTED_URL="https://pub.flutter-io.cn"
content_copy
将 FLUTTER_STORAGE_BASE_URL 设置为镜像站点。
$ export FLUTTER_STORAGE_BASE_URL="https://storage.flutter-io.cn"
content_copy
从镜像站点下载 Flutter 压缩包。
例如:要获取 CFUG 的 Flutter SDK,请访问 Flutter SDK 归档列表,并下载适用于你的平台和架构的 SDK。
创建一个可以安装 Flutter 的文件夹,然后进入该文件夹。可以考虑类似 ~/dev 的路径。
$ mkdir ~/dev; cd ~/dev
content_copy
从 tar 压缩文件中解压提取 SDK。
本示例假定你下载了 Linux 版本的 Flutter SDK。你需要将以下路径替换为你下载的文件及其版本的路径。
$ tar -xf flutter_linux_3.35.5-stable.tar.xz
content_copy
将 Flutter 添加到你的 PATH 环境变量中。
$ export PATH="$PWD/flutter/bin:$PATH"
content_copy
开始使用 Flutter 进行开发。
完成上述步骤后,
Flutter 将在当前终端窗口中,从 flutter-io.cn 获取 package 和构建产物。
要在所有终端上永久设置这些值,请按照说明将 Flutter 添加到 PATH 环境变量,同时还需要添加 PUB_HOSTED_URL 和 FLUTTER_STORAGE_BASE_URL
环境变量。
下载基于镜像站点的 Flutter SDK 压缩包
#
需要从镜像中的 SDK 版本列表 下载 Flutter,
请将 storage.googleapis.com 替换为你信任的镜像站点 URL。在浏览器或其他应用程序中使用镜像站点(如 IDM 或 Thunder)将提高下载速度。
下面的示例展示了如何将下载 Flutter 的 URL,从 Google 更改为 CFUG 的镜像。
Windows
macOS
Linux
要下载 Windows x64 版本的 Flutter SDK,你需要将原始 URL:
https://storage.googleapis.com/flutter_infra_release/releases/stable/windows/flutter_windows_3.35.5-stable.zip
content_copy
改为镜像 URL:
https://storage.flutter-io.cn/flutter_infra_release/releases/stable/windows/flutter_windows_3.35.5-stable.zip
content_copy
要下载 macOS arm64 版本的 Flutter SDK,你需要将原始 URL:
https://storage.googleapis.com/flutter_infra_release/releases/stable/macos/flutter_macos_arm64_3.35.5-stable.zip
content_copy
改为镜像 URL:
https://storage.flutter-io.cn/flutter_infra_release/releases/stable/macos/flutter_macos_arm64_3.35.5-stable.zip
content_copy
要下载 Linux 版本的 Flutter SDK,你需要将原始 URL:
https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_3.35.5-stable.tar.xz
content_copy
改为镜像 URL:
https://storage.flutter-io.cn/flutter_infra_release/releases/stable/linux/flutter_linux_3.35.5-stable.tar.xz
content_copy
info提示
并非所有镜像都支持直接从 URL 下载。
配置你的机器发布 package
#
你需要能够访问 Google Auth 和 pub.dev 网站,才能将 package 发布到 pub.dev。
启用对 pub.dev 的访问:
Windows
macOS
Linux
配置代理。要配置代理,请查阅 Dart 关于代理的文档。
确认 PUB_HOSTED_URL 环境变量未设置或为空。
$ echo $env:PUB_HOSTED_URL
content_copy如果该指令返回任何值,则移除设置。
$ Remove-Item $env:PUB_HOSTED_URL
content_copy
配置代理。要配置代理,请查阅 Dart 关于代理的文档。
确认 PUB_HOSTED_URL 环境变量未设置或为空。
$ echo $PUB_HOSTED_URL
content_copy如果该指令返回任何值,则移除设置。
$ unset $PUB_HOSTED_URL
content_copy
配置代理。要配置代理,请查阅 Dart 关于代理的文档。
确认 PUB_HOSTED_URL 环境变量未设置或为空。
$ echo $PUB_HOSTED_URL
content_copy如果该指令返回任何值,则移除设置。
$ unset $PUB_HOSTED_URL
content_copy
了解关于发布 package 的更多信息,请查阅 关于发布 package 的 Dart 文档。
已知可信的社区镜像站点
#
Flutter 团队无法保证任何镜像的长期可用性。如果其他镜像可用,你可以使用它们。
Flutter 社区 (CFUG)
#
Flutter 社区 (CFUG) 维护着 flutter-io.cn 镜像。它包括 Flutter SDK 和 pub package。
配置你的机器使用镜像
#
请使用以下指令,设置你的机器使用该镜像。
在 macOS、Linux 或 ChromeOS 上:
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
content_copy
在 Windows 上:
$env:PUB_HOSTED_URL="https://pub.flutter-io.cn"
$env:FLUTTER_STORAGE_BASE_URL="https://storage.flutter-io.cn"
content_copy
向镜像反馈
#
如果你的问题仅在使用 flutter-io.cn 镜像时才会出现,请向他们的 反馈。
上海交通大学 *nix 用户组
#
上海交通大学 *nix 用户组 维护着 mirror.sjtu.edu.cn 镜像。它包括 Flutter SDK 和 pub package。
配置你的机器使用镜像
#
请使用以下指令,设置你的机器使用该镜像。
在 macOS、Linux 或 ChromeOS 上:
export PUB_HOSTED_URL=https://mirror.sjtu.edu.cn/dart-pub
export FLUTTER_STORAGE_BASE_URL=https://mirror.sjtu.edu.cn
content_copy
在 Windows 上:
$env:PUB_HOSTED_URL="https://mirror.sjtu.edu.cn/dart-pub"
$env:FLUTTER_STORAGE_BASE_URL="https://mirror.sjtu.edu.cn"
content_copy
向镜像反馈
#
如果你的问题仅在使用 mirror.sjtu.edu.cn 镜像时才会出现,请向他们的 反馈。
清华大学 TUNA 协会
#
清华大学 TUNA 协会 维护着 mirrors.tuna.tsinghua.edu.cn 镜像。它包括 Flutter SDK 和 pub package。
配置你的机器使用镜像
#
请使用以下指令,设置你的机器使用该镜像。
在 macOS、Linux 或 ChromeOS 上:
export PUB_HOSTED_URL=https://mirrors.tuna.tsinghua.edu.cn/dart-pub
export FLUTTER_STORAGE_BASE_URL=https://mirrors.tuna.tsinghua.edu.cn/flutter
content_copy
在 Windows 上:
$env:PUB_HOSTED_URL="https://mirrors.tuna.tsinghua.edu.cn/dart-pub"
$env:FLUTTER_STORAGE_BASE_URL="https://mirrors.tuna.tsinghua.edu.cn/flutter"
content_copy
向镜像反馈
#
如果你的问题仅在使用 mirrors.tuna.tsinghua.edu.cn 镜像时才会出现,请向他们的 反馈。
主动提出托管新的镜像站点
#
如果你有兴趣建立自己的镜像,请联系 flutter-dev@googlegroups.com
寻求帮助。
社区运行的镜像站点
#
如下列表为目前在国内提供镜像的社区以及其镜像配置,由于镜像的实现方式有所不同,可能会导致数据的滞后等问题。我们制作了一个 镜像可用性监控页面 供参考。
其他已知问题
#
所有 Flutter 镜像目前均不支持/也不应支持上传 packages 到 pub.dev 网站。这个过程通常需要登录谷歌账号,而这将是一个无法绕开且复杂的挑战。
上海大学的镜像
暂时只允许校内访问,故暂未展示,感谢上海大学 Linux 用户组的同学。
腾讯云开源镜像站使用 TUNA 开源脚本制作,每天同步一次,经测试,其数据延迟较大并尚未配置有效的回源策略,有待于社区成员进一步验证。
任何其他与镜像相关的问题,请通过
Issue 向我们反馈。
部分镜像的问题已经特别标识,待镜像修复之后移除。
致谢#
本页面列出的镜像由提供者分别维护,我们确保上述列出的镜像提供方不会对数据进行恶意修改,因为国内网络情况的复杂性和特殊性,我们无法保证镜像长期稳定性和访问速度,请谅解。
如果在镜像使用中有任何问题,欢迎通过邮件与我们联系:cfug-dev@googlegroups.com。非常感谢所有帮助 Flutter 在国内维护社区基础设施建设资源的社区和公司,查看
详细致谢名单。