Windows下搭建Flutter开发环境
很多开发工具的环境搭建过程都不是太简单,跟这些技术主要还是来自MG有很大的关系;就一个网络不通,往往很多时候都能把人急死,特别是这几年封锁的趋势越来越明显,不光是我们个人要翻墙,大厂更需要带头翻墙搭建镜像服务器。
我用Windows 10,这里把Windows配置Flutter开发环境的过程记录一下,避免下次还要搭建遇到同样的问题费时间。
国内上 https://flutter.cn/ 上面有好多可学习的资源;上面也有搭建的说明,我这里主要是做补充和重点说明。
安装Git
后面安装Flutter需要用到Git,这里先安装这个工具,安装包自己上网找https://git-scm.com/download/win,一路狂点下一步。安装完成之后,应该能看到环境变量path中多出一条路径
C:\Program Files\Git\cmd
配置镜像
设置下面两个环境变量,设置在当前用户,或所有用户都可以。(记住不是path,而是单独的键值对)
FLUTTER_STORAGE_BASE_URL: https://storage.flutter-io.cn
PUB_HOSTED_URL: https://pub.flutter-io.cn
安装Flutter
最新的Flutter安装压缩包下载之后,直接解压缩到本地目录,这里我放在 D:\Sdks\flutter
,然后在环境变量path中也加入路径
D:\Sdks\flutter\bin
安装Android Studio
虽然VS code也支持Flutter开发,不过我觉得还是 Android Studio好,集成度好。官方下载: https://developer.android.google.cn/studio
安装的时候涉及到两个目录,一个是首先安装的AS IDE路径,另一个是安装后面会配置下载 Android SDK,这两个地址默认肯定是放C盘了,但是这些文件普遍很大,如果C盘空间不够,建议都改成其它盘符。这里我IDE装在默认的C盘,但是SDK装在了:
D:\Sdks\Android\sdk
安装完IDE和SDK之后,记住要设置环境变量ANDROID_HOME=D:\Sdks\Android\sdk
(单独的键值对,不是path)。安装过程中也会自动设置一个模拟器,也可以稍后自己去添加新的模拟器:Tools -> AVD Manager
安装的过程中会出现一个设置proxy的弹框,不用理会,直接下一步。
安装AS插件
安装Flutter插件,会提示把Dart插件也一起装上的,如下:
验证安装结果
看一眼设置的环境变量
回到cmd控制台,检查Flutter环境。用flutter doctor检查安装环境,可能出现下面的licenses提示,运行提示命令,一路y
下去就好了。
# flutter doctor
# 可能的错误提示
[!] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
X Android licenses not accepted. To resolve this, run: flutter doctor --android-licenses
如果你刚好用的是 Flutter 1.22.x 和 AS 4.1.0 版本,可能会出现找不到插件的错误,参考以前的文章:/tech/flutter/error-with-flutter1.22.x.html
新建项目测试
新建一个空白的Flutter Application,启动模拟器,Debug一下看看,你会发现更大的麻烦出现了,网络不通,或不流畅。
Launching lib\main.dart on sdk gphone x86 arm in debug mode...
Running Gradle task 'assembleDebug'...
# 会停留在这里很长时间,看网卡状态,就知道他在下载东西
建议把本机的DNS改成谷歌的8.8.8.8,这样可能部分DNS都不通的情况能解决,但是网速还是慢,等着吧,好在只下载一次,以后其它项目就不用下载了。
有一个缓解的解决办法,先看当前AS使用的Gradle版本,在当前项目android\gradle\wrapper\gradle-wrapper.properties
中可以看到一段配置
#Fri Jun 23 08:50:38 CEST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip
自己上官网下载gradle
https://gradle.org/releases/ 然后放到类似下面的目录中,再启动项目试一试,估计还是会下载一些别的东西,那就继续等下去吧。
C:\Users\xxx\.gradle\wrapper\dists\gradle-5.6.2-all\9st...tbb\gradle-5.6.2-all.zip
又是漫长的等待,大概30分钟,我的下载速度是几百Kb/S,最后终于出来了,看看首次运行的日志
Launching lib\main.dart on sdk gphone x86 arm in debug mode...
Running Gradle task 'assembleDebug'...
Checking the license for package Android SDK Build-Tools 28.0.3 in D:\Sdks\Android\Sdk\licenses
License for package Android SDK Build-Tools 28.0.3 accepted.
Preparing "Install Android SDK Build-Tools 28.0.3 (revision: 28.0.3)".
"Install Android SDK Build-Tools 28.0.3 (revision: 28.0.3)" ready.
Installing Android SDK Build-Tools 28.0.3 in D:\Sdks\Android\Sdk\build-tools\28.0.3
"Install Android SDK Build-Tools 28.0.3 (revision: 28.0.3)" complete.
"Install Android SDK Build-Tools 28.0.3 (revision: 28.0.3)" finished.
Checking the license for package Android SDK Platform 29 in D:\Sdks\Android\Sdk\licenses
License for package Android SDK Platform 29 accepted.
Preparing "Install Android SDK Platform 29 (revision: 5)".
"Install Android SDK Platform 29 (revision: 5)" ready.
Installing Android SDK Platform 29 in D:\Sdks\Android\Sdk\platforms\android-29
"Install Android SDK Platform 29 (revision: 5)" complete.
"Install Android SDK Platform 29 (revision: 5)" finished.
√ Built build\app\outputs\flutter-apk\app-debug.apk.
Installing build\app\outputs\flutter-apk\app.apk...
Waiting for sdk gphone x86 arm to report its views...
Debug service listening on ws://127.0.0.1:54442/yVEmYPqCn9k=/ws
Syncing files to device sdk gphone x86 arm...
结语
以后新建项目应该不会有这么漫长的等待了,忍了吧,貌似国内也还没有相应的更快的源;我折腾了好久都没有找到很好的解决办法,不是这个错就是那个地方错,大家就不要折腾了,就是慢一点,等着吧。如果有真正有效的解决办法,希望大神赐教。
IT原创技术我们还是远远落后于大洋彼岸的国度,这些年虽然有了长足的进步,但还是没有摆脱"吃土"的命运。我等IT科班生都要继续奋斗啊,要有创新的勇气;当然也需要创新的土壤,年纪大的IT工程师就不好找工作了,这种现象只能表明我们还大都是做一些低端的工作。
(完)
- 原文作者: 闪电侠
- 原文链接:https://chende.ren/2020/12/15002339-install-intr.html
- 版权声明:本作品采用 开放的「署名 4.0 国际 (CC BY 4.0)」创作共享协议 进行许可