Flutter 2.2 发布:针对各平台的性能优化、完善生态支持
谷歌在昨日举办的 Google I/O 2021 大会上宣布了 Flutter 2.2,其开发团队称此版本是迄今为止 Flutter 最好的版本。
Flutter 2.2 的更新亮点包括:针对开发者优化通过应用内购买、付款和广告的变现流程;更新工具包和语言特性以帮助开发者消除大部分错误;提升应用程序性能并减小程序包体积。
下面简要介绍 Flutter 2.2 主要变化。
新创建项目默认启用空类型安全 (null safety)
从 Flutter 2.2 起,新创建的项目会默认启用健全的空类型安全 (null safety)。null safety 增强了针对空引用异常的保护,为开发者提供了在其代码中表达非空类型的方法。由于 Dart 的实现是健全的,编译器可以在运行时消除空值检查,为应用程序提供更高的性能。此外,Flutter 生态也已经迅速做出反应,大约有 5000 个软件包已经更新以支持 null safety。
针对各平台的优化
此版本还包含许多性能改进:对于 Web 应用,提供了使用 service workers 的后台缓存;对于 Android 应用,增加对延迟组件的支持;对于 iOS 应用,着色器的预编译现在已经集成至开发工具中,可以消除或减少首次运行的卡顿。此外还为 DevTools 套件增加了许多新功能,可帮助开发者了解应用程序中的内存分配情况,以及支持第三方工具扩展。
Dart 2.13
Dart 也在 Flutter 2.2 中进行了更新。Dart 2.13 扩展了对原生应用互操作性的支持,支持在 FFI 中使用数组和封装好的数据结构。此外还包括对类型别名 (type aliases) 的支持,该项特性增加了可读性,并为某些重构方案提供了途径。
完善生态支持
谷歌认为,虽然自己仍然是 Flutter 的主要贡献者,但它不仅仅是一个“谷歌项目”。因为 Flutter 周围更广泛的生态正在逐渐增长,越来越多的企业参与了进来。
最近几个月特别增长的领域之一是 Flutter 扩展了到越来越多的平台和操作系统。例如:
- 丰田宣布会在下一代车载信息娱乐系统应用 Flutter
- Canonical 上个月发布的新版 Ubuntu 是首个集成 Flutter 支持的版本
- 三星正在将 Flutter 移植到 Tizen,并提供其他人也可以参与的开源仓库
- 索尼正在主导一个让 Flutter 嵌入到 Linux 的方案
- 微软 Surface 团队除了构建 Flutter 的可折叠体验之外,还包括 Flutter 对面向 Windows 10 构建的 UWP 应用的支持
Flutter 团队也提到越来越多主流应用也开始使用 Flutter 构建部分模块,例如微信和 Tik Tok,据说 Tik Tok 背后的公司——字节跳动已使用 Flutter 构建了 70 多个不同的应用程序。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
RetroArch 1.9.3 发布,跨平台模拟器
RetroArch 1.9.3 现已发布。RetroArch 是款功能强大的跨平台模拟器,不但能够模拟许多不同的游戏主机,还能在 Windows、MacOS、Linux、Android、iOS 以及多种游戏主机上执行。 主要更新内容如下: 3DS:禁用 XMB/GLUI 中的菜单屏幕保护程序动画 COMMAND:在 recvfrom() 之前初始化netcmd->cmd_source_len CONTENT LOADING/STATICALLY LINKED:通过文件浏览器加载内容时,确保应用了“Always Reload Core on Run Content”设置 CONTENT LOADING/EMSCRIPTEN:修复了在有"broken"核心处理的平台上通过文件浏览器加载的内容(即 emscripten) CORE INFO:写入压缩的 core info 缓存文件时跳过空白部分 CORE INFO/FILE IO:Core Info cache;在磁盘文件 I/O 速度较慢的系统上显著提高了文件 I/O 性能 CORE INFO/FILE IO:默认情况下,在所有“c...
- 下一篇
每日一博 | 看完这篇你还能不懂 C 语言/C++ 内存管理?
C 语言内存管理指对系统内存的分配、创建、使用这一系列操作。在内存管理中,由于是操作系统内存,使用不当会造成毕竟麻烦的结果。本文将从系统内存的分配、创建出发,并且使用例子来举例说明内存管理不当会出现的情况及解决办法。 一、内存 在计算机中,每个应用程序之间的内存是相互独立的,通常情况下应用程序 A 并不能访问应用程序 B,当然一些特殊技巧可以访问,但此文并不详细进行说明。例如在计算机中,一个视频播放程序与一个浏览器程序,它们的内存并不能访问,每个程序所拥有的内存是分区进行管理的。 在计算机系统中,运行程序 A 将会在内存中开辟程序 A 的内存区域 1,运行程序 B 将会在内存中开辟程序 B 的内存区域 2,内存区域 1 与内存区域 2 之间逻辑分隔。 1.1 内存四区 在程序 A 开辟的内存区域 1 会被分为几个区域,这就是内存四区,内存四区分为栈区、堆区、数据区与代码区。 栈区指的是存储一些临时变量的区域,临时变量包括了局部变量、返回值、参数、返回地址等,当这些变量超出了当前作用域时将会自动弹出。该栈的最大存储是有大小的,该值固定,超过该大小将会造成栈溢出。 堆区指的是一个比较大的内...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Red5直播服务器,属于Java语言的直播服务器
- CentOS8安装Docker,最新的服务器搭配容器使用
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题