概述
flutter 作为google推出的前端跨平台开发框架已经越来越成熟稳定, 18年12月4日迎来的1.0版本,未来可期,赶紧上船。
官方网址
实验环境
- 系统:Ubuntu18.04 64位
- 前提条件:已搭建好Android原生开发环境
- 依赖工具:bash, mkdir, rm, git, curl, unzip, which,git
开始安装
首先进入官方提供的安装指南,选择linux平台安装。按照步骤,首先确保依赖工具都已经安装完毕,然后下载安装包:
点击蓝色链接下载到本地目录,我的目录是~/development,下载完毕执行解压命令:
tar xf ~/development/flutter_linux_v1.0.0-stable.tar.xz
然后配置环境变量,编辑.bashrc文件,添加配置
export FLUTTER_HOME=~/development/flutter
export PATH=$PATH:${FLUTTER_HOME}/bin
cd到刚才解压的flutter目录下,执行命令
flutter doctor
结果报错了,如下图:
经过一番猛烈的搜索查找,找到了这里,这个就是说中国用户需要使用本地源,目前有两个源,一个是flutter官方为中国用户提供的源
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
还有一个上海交大的源
export PUB_HOSTED_URL=https://dart-pub.mirrors.sjtug.sjtu.edu.cn/
export FLUTTER_STORAGE_BASE_URL=https://mirrors.sjtug.sjtu.edu.cn/
在当前用户的.bashrc文件中配置上面其中一个源,我配置的第一个,然后删除掉~/development路径下的flutter,然后使用链接中说的通过git的方式获取。
cd ~/development
rm -rf flutter
git clone -b dev https://github.com/flutter/flutter.git
然后在进入flutter目录执行命令:
flutter doctor
结果还是报错,和上面一样的错误,然后又经过一番猛烈的搜索,发现原来是坑爹的lantern,据说这货为terminal设置里代理,果断关掉,重新开一个terminal ,在运行flutter doctor 还是报同样的错误,然后搜索发现,需要设置临时代理,还需要用到docker.安装docker的过程就不说了,主要问题也是使用本地源安装,然后执行一下命令
docker run -d -p 28080:8123 clue/polipo proxyAddress=0.0.0.0
export http_proxy=http://127.0.0.1:28080
export https_proxy=http://127.0.0.1:28080
然后执行flutter doctor ,这次看到了下载进度页。然后按照官方文档创建hello_world工程,并运行安装。运行结果如下:
至此,flutter环境搭建完毕,开发工具可以使用Android studio 、vscode、terminal。android studio需要安装dart和flutter插件,如果Browse repositories里面没有插件列表,请到setting中关闭use secure connection,步骤是File--->Settings---->Appearance&Behavior--->SystemSetting--->Update,在右面的面板中取消勾选use secure connection,
cscode中也需要安装dart和flutter这两个extension。
关于热重载的问题,只要按照官方文档所说就都可实现,这里不复述了。另外在使用vscode开发时。安装完app后,报错如下:
如果出现这个问题后,是无法hot reload,在这个时候保证只有一个需要hot reload的flutter程序在运行。
注意
特别注意,使用lantern的用户,在开始安装环境前,关闭lantern。否则会报很多问题,
相关链接
Using Flutter in China
Flutter packages get failed
2018-03-25 Flutter