Flutter 1.7 来了,看看有什么新变化

3,270 阅读3分钟

作者 | Tim Sneath
来源 | Medium Flutter
链接 | https://mp.weixin.qq.com/s/bFZaSmRrGT5o53mxa70rjw

Google 官方正式发布了 Flutter 1.7 版本,这是 Google I/O 之后一次小版本迭代,主要包含了对 AndroidX 的支持和 Play Store 的一些更新,一些新的和增强的组件,以及一些问题的修复。下面我们简单看看这些更新。

AndroidX 支持

基于 AndroidX 本身已经稳定,同时许多 Flutter 软件包也已经更新以支持 AndroidX,Flutter 1.7 现已支持使用 AndroidX 创建新的 Flutter 项目,这减少了与 Android 生态系统的其他部分集成所需的工作。创建 Flutter 项目时,可以添加 --androidx 标识以确保生成的项目舍不得新的支持库。

支持 64 位 Android 应用

虽然 Flutter 长期以来一直支持生成 64 位 Android 应用程序,但 1.7 版本增加了对创建同时支持 64 位和 32 位的 Android 应用程序包的支持。从 2019 年 8 月 1 日起,使用 native 代码且支持 Android 9 Pie 的 Android 应用程序在发布到 Google Play 商店时,除了 32 位版本之外,还需要提供 64 位版本。

新的 widget 和增强框架

更新和增强适用于 Android 和 iOS 的 widget,主要有以下

新增 RangeSlider 控件

这个控件可以在单个滑块上选择值的范围(例如最小和最大温度值)

更新 SnackBar

支持 Material 规范中的更新外观,并且在文档中新增了大量示例。

更新 Cupertino 库

进行了大量更新。特别提高了 CupertinoPicker 和 CupertinoDateTimePicker 小部件的保真度,并增加了对非英语语言本地化的支持。

改进 iOS 上的文本选择和编辑体验

该改进同时针对 Material 和 Cupertino。

升级文本渲染

支持丰富的排版功能,包括表格和旧式数字、缩小的零和样式集

添加具有 OpenType 字体功能支持的复杂排版

增加了对游戏手柄的支持

夯实基础

在过去的两个多月,修复并关闭了 1,250 多个问题。不过问题数量依然在增加,官方也在努力增加人员配置来处理这些问题。

在文档和错误消息方面的问题中,所做的一项关键工作是更好地结构化错误信息,让 VSCode 和 Android Studio 能够更有效地使用这些信息。可以查看 issue 34684。

修复最大的崩溃 bug,即 Flutter 工具无法写入 Flutter 目录。如果用户没有写权限,Flutter 会更优雅地提示失败,指出如何解决问题。

在示例及其文档方面,可以使用以下命令来创建示例:

flutter create --sample=widgets.Form.1 mysample

通过这种方式创建的示例,会生成一个 “Sample in the App” tab 项

另外,在 Mac 上构建 Flutter 应用时,已支持新的 Xcode 构建系统。对于新项目,这是默认选项。

小结

由于是小版本迭代,所以重新放在了对现有问题的解决。另外,Google 也很重视对 Flutter 社区和生态的建设,希望通过社区的力量来不断完善自身。

关注我们

欢迎关注我们的公众号:知识小集(ID: zsxjtip),也欢迎加入我们的群组讨论问题。可以加微信 coldlight_hh/wsy9871 进入我们的 iOS/flutter 微信群。