Flutter国内镜像
国内下载flutter和安装依赖实在是太太太太太慢了!!!
下面是国内几个镜像,PUB_HOSTED_URL是Dart依赖包地址,FLUTTER_STORAGE_BASE_URL是Flutter依赖文件地址。
要手动下载最新版本的flutter SDK包,可以访问 FLUTTER_STORAGE_BASE_URL 地址,然后进入/flutter_infra/releases/目录下载(这个方式Flutter社区不可用)。
Flutter 社区
社区主镜像,采用多种方式同步 Flutter 开发者资源(推荐)。
1 2
| $ export PUB_HOSTED_URL=https://pub.flutter-io.cn $ export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
|
上海交大 Linux 用户组
使用反向代理方式建立的 Flutter 镜像,数据与站源实时同步。 Pub API 返回值未做处理,可能造成无法访问的情况。
1 2
| $ export PUB_HOSTED_URL=https://dart-pub.mirrors.sjtug.sjtu.edu.cn $ export FLUTTER_STORAGE_BASE_URL=https://mirrors.sjtug.sjtu.edu.cn
|
清华大学 TUNA 协会
定时与 Flutter 社区 Storage 镜像同步,Pub API 采取定时主动抓取策略,镜像配置了完善的失败回源策略(推荐)。
1 2
| $ export PUB_HOSTED_URL=https://mirrors.tuna.tsinghua.edu.cn/dart-pub $ export FLUTTER_STORAGE_BASE_URL=https://mirrors.tuna.tsinghua.edu.cn/flutter
|
CNNIC
基于 TUNA 协会的镜像服务,数据策略与 TUNA 一致,通过非教育网的域名访问。
1 2
| $ export PUB_HOSTED_URL=http://mirrors.cnnic.cn/dart-pub $ export FLUTTER_STORAGE_BASE_URL=http://mirrors.cnnic.cn/flutter
|
腾讯云开源镜像站
定时(每天凌晨)与 TUNA 协会镜像同步,数据有延迟,访问速度有待反馈。
1 2
| $ export PUB_HOSTED_URL=https://mirrors.cloud.tencent.com/dart-pub $ export FLUTTER_STORAGE_BASE_URL=https://mirrors.cloud.tencent.com/flutter
|
开发或者编译卡死的问题
开发或者编译会遇到 Running Gradle task 'assembleDebug'...
或者 Running Gradle task 'assembleRelease'...
。
因为需要下载安卓中的一些依赖,maven,下载地址需要替换。
打开 flutter_app/android/build.gradle
,修改
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| buildscript { ext.kotlin_version = '1.3.50' repositories { // google() // jcenter() maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/jcenter' } maven { url 'http://maven.aliyun.com/nexus/content/groups/public' } } }
...
allprojects { repositories { // google() // jcenter() maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/jcenter' } maven { url 'http://maven.aliyun.com/nexus/content/groups/public' } } }
|
打开flutter的SDK目录flutter/packages/flutter_tools/gradle/flutter.gradle
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| buildscript { repositories { // google() // jcenter() maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/jcenter' } maven { url 'http://maven.aliyun.com/nexus/content/groups/public' } } dependencies { classpath 'com.android.tools.build:gradle:3.5.0' } } ....
// 下面这个变量改成国内地址 private static final String MAVEN_REPO = "https://storage.flutter-io.cn/download.flutter.io";
|
注: 如果还有问题,那么可以排查安装的依赖包,有的依赖包也需要gradle编译,所以也要修改repositories,可以在import语句那里ctrl加鼠标点击跳转到依赖包目录,进行同样的操作即可修复。
如果flutter run 失败了,或者ctrl+c,请在任务管理器中把dart,java相关的进程kill掉,再重试。