Flutter 3.13 发布
Flutter 3.13 现已发布,并包含 Dart 3.1。自上次发布以来的三个月时间内,此版本共合并了 724 个 PR。一些更新亮点包括:
Engine
对 Impeller(新图形渲染器)进行了多项改进,并为可折叠设备添加了新的引擎 API。
Impeller
iOS 性能改进
在此版本中继续改进了 Impeller 在 iOS 上的性能。经过多方面的优化,现在 iOS 上的 Impeller 渲染器不仅延迟更低(通过完全消除着色器编译卡顿),而且在某些基准测试中平均吞吐量也更高。在 flutter/gallery 过渡性能基准测试中,平均帧光栅化时间现在约为使用 Skia 时的一半。
这一进步还得益于:
- 启用脏区管理和部分重绘(flutter/engine#40959)
- 实现并发渲染通道编码(flutter/engine#42028)
- 对文本渲染进行了大量改进(flutter/engine#41290、flutter/engine#41780、flutter/engine#42417)
- 为 convex shapes 添加了快速路径,以避免昂贵的 tessellation calls(flutter/engine#41834)
- 开始在一些操作中使用计算着色器(flutter/engine#42192)
- 更热切地删减越界绘制操作(flutter/engine#41606)
Fidelity 改进
在听取并解决用户的反馈后,在使用 Impeller 时,广色域色彩现已成为 iOS 上的默认设置。
Android 上 Impeller 的进度更新
继续在 Impeller 的 Vulkan 后端方面取得进展,但尚未达到官方预览期所需的质量水平。计划将在今年晚些时候以稳定版本的形式进入 Android 版 Impeller 的预览期。
尽管 Android 上的 Impeller 尚未完全准备好进行预览,但 OpenGL 和 Vulkan 后端已受益于过去一年中对 Impeller 的 HAL 所做的许多与后端无关的优化。特别是,Android 的平均帧光栅化时间在 flutter/gallery 转换性能基准测试中也得到了显着改善。进一步的改进正在进行中,以便 Android 上的预览可以达到高质量。
macOS 上的 Impeller(和 Wonderous)
适用于 macOS 的 Impeller 现已推出预览版。用户可以按照 Impeller 页面上的指导测试 Impeller 并在应用程序中启用。
New engine API
改进的可折叠设备支持
为了更好地支持可折叠设备,添加了一个新的 API 来检索显示屏的各种属性。新的 getter FlutterView.display 返回一个 Display 对象。Display 对象会报告显示屏的物理尺寸、设备像素比和刷新率。可查看 setPreferredOrientations 以获取使用新 API 的示例。
Framework
Material
对 Material Framework 进行了多项改进,以 1) 提供更多平台适应性,2) 允许更多自定义,3) 添加新功能。
TextField 中的字符识别
在 iOS 上使用 TextField 时,用户将自动看到一个使用设备摄像头识别字符并将其插入字段的选项。
平台自适应对话框
AlertDialog 中添加了自适应构造函数以及自适应函数 showAdaptiveDialog,以根据当前平台显示 Material 或 Cupertino 对话框。
现在使用 AlertDialog.adaptive() 在 iOS 上使用 CupertinoAlertDialog 小部件:
以及 Android 上的 Material AlertDialog。
带年月模式的 CupertinoDatePicker
为 CupertinoDatePicker 添加年月模式。
\
Cupertino (iOS-style) check styled radio
useCheckmarkStyle 属性已添加到 CupertinoRadio 中。这还允许 Radio.adaptive 和 RadioListTile.adaptive 小部件控制它们是否在 iOS 上使用 checkmark style。
应用程序生命周期变化
AppLifeCycleListener
添加了 AppLifecycleListener 类,用于侦听应用程序生命周期中的更改,并响应退出应用程序的请求。
Android
新的支持目标
在此版本中,Flutter 现在支持 Android 14/ API 34。虽然仍在开发 Android 14 中的一些新功能(即预测性返回导航),但开发团队已根据新的 Android SDK 对该版本进行了全面测试,并优先修复用户可能发现的任何相关问题。
iOS
Reduced rotation distortion on iOS
当 iOS 屏幕旋转时,Flutter 应用程序以前会出现一些失真,看起来与原生 iOS 应用程序不同。开发团队做了一些修改来减少失真:
重命名 Runner
创建 Flutter iOS 应用程序时,会在 /ios 文件夹中创建 Runner Xcode 项目和 Xcode 工作区。现在,用户可以重命名工作区或项目,这样就不会出现 Runner 列表了。
为 iOS 17 和 Xcode 15 做准备
随着 iOS 17 和 Xcode 15 即将发布,希望使用此工具链进行开发的用户将需要使用 Flutter 3.13。此外,在下载 Xcode 15 时,还需确保还下载了 iOS 17 模拟器。
破坏性变更和弃用
破坏性变更
下一版本默认 Material 3
下一个Flutter 稳定版本中计划将 ThemeData useMaterial3 默认值从 false 更改为 true。换句话说,应用程序将默认获取 Material 3 颜色、文本样式和其他视觉效果。
可查看 Material 3 demo 预览 M2 和 M3 之间的差异。
Android supported platforms
Flutter 不再支持 Android Jelly Bean API levels(16、17 和 18)。
变更和迁移指南列表
此版本中的破坏性变更包括 v3.10 发布后已弃用的 API。要查看所有受影响的 API 以及其他上下文和迁移指南,可参阅此版本的弃用指南。其中许多都由 Flutter Fix 支持,包括 IDE 中的快速修复,以及使用 dart fix 命令批量应用。
更多详情可查看官方博客。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
ModStartBlog v8.0.0 博客归档页面,部分组件升级
ModStart 是一个基于 Laravel 模块化极速开发框架。模块市场拥有丰富的功能应用,支持后台一键快速安装,让开发者能快的实现业务功能开发。 系统完全开源,基于 Apache 2.0 开源协议。 功能特性 丰富的模块市场,后台一键快速安装 会员模块通用且完整,支持完整的API调用 大文件分片上传,进度条显示,已上传文件管理 强大的模块扩展功能,所有模块可以无缝集成,支持在线安装、卸载模块 完善的开发助手,实现模块、主题的的一键创建 完善的后台权限管理,支持基于RBAC的权限管理系统 后台管理支持使用手机、平板、PC,无论何时何地都可方便管理 第三方登录(QQ、微信、微博、支付宝、微信小程序) 第三方支付支持(微信、支付宝、支付宝当面付、微信扫码、微信小程序) 第三方云存储支持,支持云储存分片上传(阿里云、百度云、华为云、腾讯云、FTP、七牛云、UCloud、又拍云) 第三方短信支持(阿里云、腾讯云、华为云、百度云、253云通讯、聚合、七牛云、融云、赛邮、UCloud、云片、网易云) V8.0.0版本更新 2023年08月18日ModStartBlog发布v8.0.0版本,增加了...
- 下一篇
Calibre 6.25 发布,功能强大的开源电子书工具
Calibre 开源项目是 Calibre 官方出的电子书管理工具。它可以查看,转换,编辑和分类所有主流格式的电子书。Calibre 是个跨平台软件,可以在 Linux、Windows 和 macOS 上运行。 Calibre 6.25 现已正式发布,此次更新内容如下: New features Book details panel:不再强调标题,使实际数据更加突出 允许在编辑元数据对话框中使用新的管理数据文件对话框 Trash dialog:允许右键单击条目将其保存到磁盘 通过拖放合并书籍时,添加一个选项以使用拖动的封面而不是目标书籍中的封面 Create catalog:添加按钮以在创建 CSV/XML 目录时轻松选择所有/非/可见字段 Preferences->Add your own columns:添加按钮以显示/隐藏所有列 Bug 修复 修复了先前版本中导致某些 ISO-8601 时间戳解析失败的回归问题 E-book viewer:鼠标滚轮水平事件应该跳转 sections 而不是内部file boundaries 修复 Preferences->Add yo...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7安装Docker,走上虚拟化容器引擎之路
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Hadoop3单机部署,实现最简伪集群
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2配置默认Tomcat设置,开启更多高级功能