在国内网络环境下运行 Flutter 项目

537 阅读1分钟

有条件可直接挂代理全程无阻,无条件使用镜像速度更快

Flutter 镜像

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

PS: 永久使用请复制到 $HOME/.zshrc 文件中

Android 镜像

运行安卓项目, Running Gradle task 'assembleDebug'... 长时间卡住, Android项目是从工程的 build.gradle 里面定义的 Maven 仓库服务器去下载依赖库

替换google()和jcenter()为阿里云镜像

repositories {
    google()
    jcenter()
    mavenCentral()
}

repositories {
    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' }
}

替换grade下载地址

#distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip
#csdn镜像
distributionUrl=https\://downloads.gradle-dn.com/distributions/gradle-5.1.1-all.zip

iOS 镜像

运行 iOS 项目, pod isntall 长时间卡住

~/.cocoapods/repos 存储的是三方库的索引,体积庞大,默认是从github下载,建议使用清华镜像来下载

$ cd ~/.cocoapods/repos 
$ pod repo remove master
$ git clone https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git master

最后进入项目工程指定 pod 下载源地址,在 Pods 工程的 Podfile 第一行加上:

source 'https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git'

也可以使用CocoaPods官方提供的CDN地址

source 'https://cdn.cocoapods.org/'

flutter doctor 报错 HTTP Host is not reachable

✗ HTTP host https://maven.google.com/ is not reachable. Reason: An error
  occurred while checking the HTTP host: Operation timed out
  
  
# #为注释,$ 为命令,➜ 为输出结果(作示例用)

# 1. 定位flutter目录
$ which flutter
➜ /usr/local/flutter/bin/flutter

# 2. 修改 flutter host 验证文件中的 https://maven.google.com/ 为 https://dl.google.com/dl/android/maven2/
$ vim /usr/local/flutter/packages/flutter_tools/lib/src/http_host_validator.dart

# 3. 删除 flutter/bin 目录下的 cache 文件夹
$ rm -rf /usr/local/flutter/bin/cache/

# 4. 再次运行 flutter doctor
$ flutter doctor
➜ [✓] HTTP Host Availability

参考

在中国网络环境下使用 Flutter

CocoaPods 镜像使用帮助