Flutter 3.13 发布

Flutter 3.13 现已发布,并包含 Dart 3.1。自上次发布以来的三个月时间内,此版本共合并了 724 个 PR。一些更新亮点包括:

Engine

对 Impeller(新图形渲染器)进行了多项改进,并为可折叠设备添加了新的引擎 API。

Impeller

iOS 性能改进

在此版本中继续改进了 Impeller 在 iOS 上的性能。经过多方面的优化,现在 iOS 上的 Impeller 渲染器不仅延迟更低(通过完全消除着色器编译卡顿),而且在某些基准测试中平均吞吐量也更高。在 flutter/gallery 过渡性能基准测试中,平均帧光栅化时间现在约为使用 Skia 时的一半。

这一进步还得益于:

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 命令批量应用。

更多详情可查看官方博客。 

优秀的个人博客,低调大师

微信关注我们

原文链接:https://www.oschina.net/news/254296/flutter-3-13-released

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。