在去年 MWC 大展上发布首个 Beta 版后,Flutter 1.0 正式版于 2018 年 12 月召开的 Flutter Live 2018 上正式发布。今天在巴塞罗那召开的 MWC 发布会上,Google 正式发布了 Flutter 跨平台 UI 框架的 1.2 版本。新版本最大的改变就是引入了对 Android App Bundles 的支持,可有效打包 Android APP 并创建即时应用的最新技术。此外该框架还帮助开发者接受应用内支付奠定了基础,并添加了很多基于 Web 的工具。


image

以下是Flutter 1.2的一些更新,包括:

改进的Material和Cupertino小部件集

该团队一直致力于改进Material和Cupertino小部件集。现在,开发人员在使用Material小部件时会有更大的灵活性。对于Cupertino小部件,他们增加了对iOS上浮动光标文本添加的支持。这可以通过用力按键盘或长按空格键来触发。

支持Android App Bundles

Flutter 1.2支持Android App Bundles,这是一种新的上传格式,包含应用程序的所有编译代码和资源。这种格式有助于缩小应用程序的大小,并支持Android应用程序的动态交付等新功能。

支持Dart 2.2 SDK

此版本包括Dart 2.2 SDK,该SDK也于昨天发布。 Dart 2.2具有显着的性能改进,可以更快地进行提前编译,并且可以用于初始化集合的文字语言。它还引入了Dart Common Front End(CFE),它解析Dart代码,执行类型推断,并将Dart转换为较低级别的中间语言。

Flutter 1.2 更新包括了大量常规稳定性和性能更新,包括最新的 Dart 2.2 SDK(默认情况下,Flutter 应用程序是用 Google 的 Dart 语言编写的),此外团队还表示正积极改善对 iOS 的支持,支持浮动光标文本编辑等等。


image

虽然 Flutter 一直专注于移动,但该团队最近也开始讨论使用该框架构建桌面应用程序。为此,在 1.2 版本中引入了全新的键盘事件和鼠标悬停支持。Project Hummingbird(将 Flutter 推广网页版)的技术预览版也将会未来几个月上线。


image

对于新的工具,值得注意的是,Google 已经在 Android Studio 中构建了 Flutter 支持,并为微软日益流行的 Visual Studio Code 添加了工具。现在,它还在构建新的基于 Web 的编程工具 Dart DevTools。它们在本地运行,包括小部件检查器,时间轴视图,源级调试器和日志记录视图。

其他的更新

Flutter 1.2还支持更广泛的动画缓动功能,这些功能的灵感受到Robert Penner工作的启发。该团队已经通过添加新的键盘事件和鼠标悬停支持为桌面级操作系统做好准备。

Flutter的插件团队为Flutter 1.2添加了一些更改,可以很好地支持In App Purchases插件。除了这些更新,他们还为视频播放器,webview和地图修复了一些错误。

除了Flutter 1.2,团队还发布了Dart DevTools的预览版,这是一套用于Dart和Flutter的性能工具。这个套件中的一些工具,包括web inspector、timeline视图和其他工具,现在可以安装了。

现在开始玩Flutter的好处呢, 我认为有如下几点:

  1. 如果我们以后想在Google的新系统上跑程序的话, 用Flutter来编写是一定没错的. 当然最近的报导显示, Fuschia原生支持ART, 因此Android程序应该也可以. 不过直接上Flutter我认为更好.

  2. Flutter用Dart, 学习Flutter的同时会使我们掌握一门新的语言. 买一送一.

  3. Flutter天生支持iOS风格的控件, 称为Cupertino, 这样我们可以一套设计, 一套code跑在两个系统上.

  4. 学习Flutter的过程会改变手机端app开发的思维. 毕竟这个亲只有一个activity. 全程跟个游戏引擎一样. 60帧每秒绘图.

  5. Hot reload. 极大地加速了我们的开发效率. 试过了, 绝对会爱上它.

  6. Flutter提供method channel给Android和iOS. 其实我们可以只用Flutter来开发UI. 其他底层逻辑可以封装Android和iOS分别的lib package. 然后直接Rx封装写回method channel. 也是一种新的开发模式.

  7. 性能更好, 兼容性更好, 开发起来更有乐趣, 这才是程序员的人生. 而Flutter都能满足.

参考更多

Flutter基础-环境搭建及demo运行

一份完整的Android Studio搭建Flutter教程

欢迎关注我微信技术号:终端研发部。在这里获得的不仅仅是技术!

03-01 17:59