一.Flutter 配置环境变量
直接按照官网的步骤来就行
https://flutter.cn/docs/get-started/install
我是windos电脑,还是大概说一下
大致流程如下:
1.下载压缩包,解压在本地,得到一个flutter文件夹和下载的压缩包
我是下载在E盘的FlutterSDK文件夹下:E:\FlutterSDK
2.配置环境变量
我的电脑-->属性-->高级系统设置-->环境变量-->系统变量
将刚刚的flutter文件夹中的bin文件目录复制黏贴到最后的一个空白栏
现在可以直接在全局的终端中运行flutter指令就配置成功了
二.Flutter配置国内镜像(非常重要,除非你一直保持翻墙)
参考:https://www.jianshu.com/p/897a78aec874
还是刚刚配置环境变量的地方,在用户变量中配置
点击新建
输入变量和变量名这里使用flutter中文社区提供的镜像地址:
FLUTTER_STORAGE_BASE_URL: https://storage.flutter-io.cn
PUB_HOSTED_URL: https://pub.flutter-io.cn
两个变量都配置好后结果如下:
现在使用flutter pub get获取依赖就不会lock了。
三.在Android Studio中进行开发
首先安装好两个插件:
然后可以创建flutter 项目了:new-->New Flutter Project...
选择完整的Flutter项目:Next
是否跨平台:
插上usb设备或者使用虚拟机也可以,在Android Studio自带的终端Terminal中输入flutter run 就可以运行项目啦。
运行成功后在Terminal中有一个Flutter常用指令
R:热更新
O:切换系统效果 ios/android
P:查看布局线条
以上就是Flutter配置环境变量的所有过程了,接下来是一些其他的坑:
四.Flutter 更换SDK位置
我在Flutter的一次更新过程中,断网了,Flutter更新中断,然后运行项目时各种出错,又没办法解决。无奈只能重新下载SDK压缩包(如第一步中配置好环境变量,镜像无需再次配置)
我原本的SDK位置是:D:\FlutterSDK\flutter
新的SDK位置是:E:\FlutterSDK\flutter
环境变量path中也换成了:E:\FlutterSDK\flutter\bin
此时电脑上有两个Flutter SDK:
一个是D盘的损坏的
一个是E盘的新安装的。
使用Android Studio新建项目时选择E盘的,没有任何问题,成功运行,这证明E盘的SDK是正常的。
但是我的老项目使用的是D盘的SDK需要切换成E盘的,在Android Studio中切换:
Dart SDK会自动切换位置,但是最好确认一下:
现在尝试flutter run 运行项目,得到以下警告,随后报错:
Warning! The 'flutter' tool you are currently running is from a different Flutter repository than the one last used by this package. The repository from which the 'flutter' tool is currently executing will be used instead.
running Flutter tool: E:\FlutterSDK\flutter
previous reference : D:\FlutterSDK\flutter
This can happen when you have multiple copies of flutter installed. Please check your system path to verify that you are running the expected version (run 'flutter --version' to see which flutter is on your path).
这个是因为项目包中使用的还是原本的D盘的SDK文件,所以项目里两个sdk冲突了
为解决这个问题 需要运行指令:
flutter packages upgrade
更新一下项目的文件然后为了保险期间,重新获取一下依赖:
flutter pub get
然后再试着run一下:
运行成功了!!
但是启动app后崩溃,报错是:
[ERROR:flutter/third_party/txt/src/minikin/FontFamily.cpp(184)] Could not get cmap table size!
flutter/third_party/txt/src/minikin/FontCollection.cpp(95)] nTypefaces == 0
表示:引用的字体或者图标不存在
我再次pub get一下,然后run就好了,目前不知道具体原理。