Flutter初体验
Flutter 是 Google 开源的 UI 工具包,帮助开发者通过一套代码库高效构建多平台精美应用,支持移动、Web、桌面和嵌入式平台。Flutter 开源、免费,拥有宽松的开源协议,适合商业项目。
目前Flutter正式版本为1.12,开发语言为Dart,功能很强,可以看到很多优秀语言的影子,官方网站flutter.dev,国内可以用访问flutter.cn。安装与入门可以参考网站中的“开始使用”,官网的内容还是很详细且贴切,根据指引能很快上手。
要注意黄框中的提示,对解决一些安装问题有帮助。比如:
目前1.12版本还没有修复,在使用flutter doctor时可能有很多关于android studio的异常,包括:
1、✗ Android license status unknown. 。解决:flutter doctor --android-licenses
2、A newer version of the Android SDK is required. To update, run:...。解决:在Android sdk tools文件夹下执行 sdkmanager --update
3、Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema。解决:jdk版本过高,如果没有特别的需要,最好使用jdk8版本。我尝试用最新的jdk版本(11)试了很多网上的方法都不能解决,如果高版本下有好的解决方案还望大家指教。使用jdk8就可以正常更新sdkmanager并获取android studio的授权。
正常启动了初始项目之后就可以看到一个简单的demo,随意修改一些内容保存就可以热加载看到效果,默认启动的是debug模式,尝试试了一些写一些效果,在debug模式下会有卡顿感,这是正常现象,千万不要放弃了,尝试编译成release(发布版)或者profile(性能测试版),你会发现性能会特别多,各种操作都很流畅。
才开始会觉得Dart的语法全是大括号,看起来很费劲,特别是习惯了react的jsx语法后,写了一些组件后发现还是很不错,最起码写起来不错,得意于android studio免费提供的开发环境,各种体验还是得心应手,遇到了一些界面上的异常也能很好的解决,比react native的体验好多了。