Go-flutter构建macos应用尝鲜
本次尝鲜的是基于google团队的go-flutter(是的,并没有被合入flutter团队,所以作者也说了,如果他们不维护了,go-flutter就蝶了,明明是一个公司啊摔!)
环境
默认拥有Flutter开发的全家桶,即flutter doctor检测最多只有检测不到设备的警告。
Flutter SDK:桌面版截止目前Flutter官方还未宣布合入stable分支,但是我在 v1.9.1+hotfix.6下是可以运行的,(unknown是我之前回退过版本,最新的stable插件跟不上),只是会建议用master分支,应该是很早以前就合入了beta,对于尝鲜来说够了。
golang:最新哒
brew install go // brew还是非常有用的,太慢的去配置下镜像吧
// 配置 GOPATH 环境变量
vi ~/.bash_profile
export GOPATH=~/dev/go
PATH=$PATH:$GOPATH/bin
go-flutter:
go get -u github.com/go-flutter-desktop/hover
这里搞了我很久,具体点说就是golang的链在国内是怎么都连不上,无限timeout,所以这里也得配置镜像,七牛。
然后坑来了,参考
大致意思是,用了镜像会导致这个错误,但是国内不用镜像下载不了,xxxx。
不过最后还是解决了,其实把镜像关掉,再执行一次go get,$GOPATH/src下就能找到这个app目录了,然后把它手动拷贝过去。
go env -w GO111MODULE=off
go get -u github.com/go-flutter-desktop/hover
构建
到项目的目录下,执行
hover init
目录下和ios,android同级会多一个go文件夹
hover run
项目就跑起来了,当然,跑起来多半是没啥用的,因为没有插件,不过项目比较简单,还有救,下面是我的插件情况,大家可以自己和官方的插件支持对比一下github.com/go-flutter-…
不多说了,先把有的插件添加上!
再run一次,成功啦!
然后,尝试hover build,一路提示,最后需要docker环境,于是brew cask install docker
比较关键的是要手动添加共享路径/var/folders/5t/6fch42_17gb_1j4twfn0tdtm0000gp/T,否则docker会自动将其变为私有,很蛋疼 最后终于
总结
MacOS开发下现在主要问题,其一Flutter官方尚未发力,还在预览阶段;其二,插件社区尚未完善;一句话就是坑多轮子少;但是如果你有足够的兴趣,我相信这一切都难不倒你。
Flutter猛然发力的2019过去了,ios和android已经比较完善了,期待2020生态能更加丰富。以上。
quizbox下载体验