Flutter 2.8 正式发布
文/ Tim Sneath,Flutter & Dart 产品经理
Flutter 已经更新到 2.8 正式版,发布了多项新特性和改进以不断改善移动和 Web 端的开发体验,同时也正在将桌面端的支持推向稳定版。
Flutter 为应用开发带来了革新:只要一套代码库,即可构建、测试和发布适用于移动、Web、桌面和嵌入式平台的精美应用——开发者只需专注于他们希望构建的产品和服务,而无需首要考虑发布到哪些平台;作为一个高性能、高生产力的开发框架,Flutter 也可以帮助开发者们缩短产品开发周期;一套代码库,针对多个平台。
新特性和改进: 更快速、更高效
这次正式版主要关注的是 移动平台性能。理想情况下,出色的性能应该是「标配」,但在实践中,所有大型或复杂业务的应用都需要针对硬件和系统 API 库进行优化。这包括但不仅限于比如应用启动,可能会受限于网络带宽和其他代码初始化的消耗,内存消耗,可能会受制于部分内存有限的设备,以及图形渲染性能等。我们也一直在借助内部的大型应用比如 Google Pay 对 Flutter 的使用来提高 Flutter 的性能表现,并提供更好的工具来调试和分析应用性能。为你的工程升级到 Flutter 2.8 正式版,你的应用应该会有更少的内存占用以及更快的启动速度。
最新的更新也包含了更方便的 应用接入后端服务 的特性,比如使用 Firebase 和 Google Cloud。我们也为应用可以加入 Google Ads 提供了稳定版的支持,并对相机插件和 Web 插件内嵌提供了大量更新。与此同时发布的还有 Dart 2.15 正式版,增加了对并发性能的重大改进,也添加了新的语言特性,比如构造函数拆分和枚举类型的增强,也进行了性能优化,使得运行时内存降低了 10%。
另一个重要话题和资源投入是「提升开发者效率」,得力于 Flutter 的有状态热重载 (stateful hot reload) 等特性,我们始终专注于为开发者创建一个紧凑的内部循环迭代流程,我们正在开始探索封装出一些更高级的功能让开发者们更快速和高效的使用,你也能在未来的版本里看到我们针对这个目标的改进。比如在此次正式版发布里,我们添加了一个使用 Firebase 处理身份验证的 widget,使用的时候无须担心任何特殊的用例,比如两步验证、密码重置的操作,也不用操心使用 Google、Apple、Twitter 和 Facebook 账号登陆时的复杂情况。将这些特性和服务直接构建在 Flutter 的核心基础中,将有可能为应用开发带来革新,将高效开发和低代码方案相结合,应用在 Flutter 这个灵活和强大的 UI 框架上。
使用基于 Flutter 的游戏开发框架 Flame
对于大部分开发者来说,Flutter 是一个应用框架。不过使用 Flutter 进行休闲小游戏开发的生态也在不断发展,这些小游戏借助 Flutter 实现硬件图形加速。
今天我们也同时庆祝 Flame 框架 (flame-engine.org) 的 1.0 版正式发布,这是一个使用基于 Flutter 的模块化 2D 游戏引擎,Flame 提供了快速构建游戏所需要的全部内容,除了游戏循环 (game loop) 之外,也提供了核心元素比如组件系统 (Flame 里称之为 FCS)、精灵动画和图像、碰撞检测、世界相机、效果系统以及手势和输入支持等。
Flame 是模块化的,它也可以使用其他库或 package 进行扩展,比如使用 River 进行动画效果处理、使用 audioplayers 这个 package 进行音乐播放和声音特效,使用 Forge2D (一个类似 Box2D 的物理引擎)、Tiled (瓦片地图编辑器)、Fire Atlas (Spritesheet 和精灵动画编辑器) 等。Flame 以及其广泛的生态系统,共同为休闲或者 2D 游戏提供了一套强大的服务。
Flame 由 Blue Fire 团队 创造,这是一个专注于为 Flutter 和 Dart 构建开源 package 和插件的团队。我们很高兴能与他们一起合作,如果你对游戏开发感兴趣,我们鼓励你去试试看 Flame。
Flutter 的发展势头正旺
Flutter 的持续增长、发展势头以及工具和生态的繁荣的令人感叹。今年的 I/O 大会上,我们注意到 Play 商店以及拥有超过 20 万款应用使用了 Flutter,六个月后,这个数字几近翻了一番,达到 37.5 万+ 款!
不仅在 Android 平台,据独立移动分析公司 AppAnnie 的信息,iOS 平台头部品牌和大型应用诸如 BMW、eBay、WeChat、SHEIN、Philips Hue、 Norton、trip.com 和 Greggs 里也都使用了 Flutter。在 Web 平台,我们也通过一些类似 FlutterFlow 和 Rive 等设计工具为应用带去更好的体验。桌面端,Ubuntu 的工程团队也正继续使用 Flutter 构建各种新的体验,包括新的安装程序和固件更新程序。甚至包括 绝地求生 这样的大型游戏,也称 Flutter 能够很好的适应各种 UI 屏幕。
生态系统的构建绝非一日之事,由各个机构和社区独立调研得出:Statista、JetBrains、SlashData 和 Stack Overflow,Flutter 现在已经成为最受欢迎的多平台工具包,这同时离不开日益增长的 package 和插件库的生态以及各种工具集的支持。
回首和展望
这一年同样艰难,而且我们的工程团队也一直在忙碌。除了把 2.8 推入正式版本,我们还重写了开发者工具,推出空安全和 Web 支持,完成了原生代码的 FFI 支持,加入了对 Material You 的支持,并努力提升性能和质量。我们将近解决和关闭了总共 2 万个 issue,也 更新了新版的 Flutter 网站。过去的几个月我们花费了大量的精力来整理我们的工程基础建设,用以提高工程师的生产力以及扩大测试范围等。
展望 2022,首先是希望能够真正走出去与大家见面,我们也正在向核心开发者体验方面投入更多,比如增强编程语言,文档更新以及抽象出更多高级功能,让 Flutter 可以更易于构建复杂应用,我们还将把桌面端支持推进到稳定版本,并进一步增加 Web 端的特性。除此之外,我们还计划与扩大其他平台的互操作性以适配更新的屏幕。我们一直在路上!
怀念和致敬
我们想把 Flutter 2.8 版本献给社区的 Kevin Gray,他是一名来自 VGV 团队的工程师,但是 于一周之前不幸去世。一开始 Kevin 就对 Flutter 的成功做了很多重要贡献,他是很多早期 Flutter demo 背后的开发者,包括 Flutter 的第一个客户 Hamilton 应用,用 Flutter 开发了第一个桌面演示 slides 的应用,开发了第一个在 Google I/O 主题演讲中展示的 Flutter 应用。Kevin 是一位有才华、有爱心、风趣和善良的人,我们在公开纪念他,并让所有人都知道他的影响,如果没有他,Flutter 将不会是现在的这个样子。我们想念你,谢谢你为 Flutter 做出的一切。
Kevin 一直在支持一项公益事业「国际计划 (Plan International)」,CFUG 社区以 Kevin 的名义向这个项目捐助 $280,以感谢他对 Flutter 的支持和贡献。
Flutter 2.8 正式发布的更多相关文章
- Flutter 1.22 正式发布
支持iOS 14和Android 11,新的i18n和l10n支持,可用于生产的Google Maps和WebView插件,新的App Size工具等等! 作者:Chris Sells 原文:http ...
- Flutter 3.7 正式发布
新的 Flutter 稳定版加入了 Material 3 更新.iOS 平台优化及其他内容 新年伊始,由 Flutter 3.7 正式版来「打头阵」!我们与整个 Flutter 社区成员们继续在 Fl ...
- Flutter 1.0 正式版: Google 的便携 UI 工具包
Flutter 1.0 正式版: Google 的便携 UI 工具包 文 / Tim Sneath,Google Dart & Flutter 产品组产品经理 Flutter 是 Google ...
- Flutter 1.0 正式版: Google 的跨平台 UI 工具包
今天我们非常高兴的宣布,Flutter 的 1.0 版本正式发布!Flutter 是 Google 为您打造的 UI 工具包,帮助您通过一套代码同时在 iOS 和 Android 上构建媲美原生体验的 ...
- Flutter免费(视频)教程汇总
Flutter学习导航 Flutter简介: Flutter可以轻松快速地构建漂亮的移动应用程序. Flutter是谷歌的移动应用SDK,用于短时间内在iOS和Android上制作高质量的原生界面应用 ...
- 【老孟Flutter】2021 年 Flutter 官方路线图
老孟导读:这是官方公布的2021年路线图,向我们展示了2021年 Flutter 的主要工作及计划. 原文地址:https://github.com/flutter/flutter/wiki/Road ...
- Flutter 中文文档网站 flutter.cn 正式发布!
在通常的对 Flutter 介绍中,最耳熟能详的是下面四个特点: 精美 (Beautiful):充分的赋予和发挥设计师的创造力和想象力,让你真正掌控屏幕上的每一个像素. ** 极速 (Fast)**: ...
- 一起看 I/O | Flutter 3 正式发布!
作者 / Tim Sneath, Google Flutter 和 Dart 产品组产品经理 Flutter 3 实现了 Flutter 以移动端为中心扩展到多平台的产品规划,并在今年 I/O 大会的 ...
- Flutter 实现原理及在马蜂窝的跨平台开发实践
一直以来,跨平台开发都是困扰移动客户端开发的难题. 在马蜂窝旅游 App 很多业务场景里,我们尝试过一些主流的跨平台开发解决方案, 比如 WebView 和 React Native,来提升开发效率和 ...
- Flutter终将逆袭!1.2版本发布,或将统一江湖
在去年 MWC 大展上发布首个 Beta 版后,Flutter 1.0 正式版于 2018 年 12 月召开的 Flutter Live 2018 上正式发布.今天在巴塞罗那召开的 MWC 发布会上, ...
随机推荐
- 30K Star,最全面的PDF处理开源项目,你也可以拥有一个本地的PDF处理大全
大家好,我是程序猿DD 今天给大家推荐一个日常大概率能用上的开源项目:Stirling PDF 开源地址:https://github.com/Stirling-Tools/Stirling-PDF ...
- 02-springboot配置
目录 1,前言 2,YAML介绍 3,获取yml配置文件内容 4,springboot的配置文件 5,springboot使用@Value实现映射 6,@PropertySource.@ImportR ...
- CSP2023-J/S 游记
本人 初二 \(\texttt{HA}\) CSP2023 成绩: CSP-J 第一轮:\(86.5\) CSP-S 第一轮:\(41.5\) CSP-J 第二轮:\(100+100+100+0=30 ...
- 【转载】 优必选悉尼 AI 研究院何诗怡:基于课程学习的强化多标签图像分类算法 | 分享总结
原文地址: https://baijiahao.baidu.com/s?id=1603057342167437458&wfr=spider&for=pc 来源"雷锋网&quo ...
- 《Python数据可视化之matplotlib实践》 源码 第一篇 入门 第三章
图3.1 import matplotlib as mpl import matplotlib.pyplot as plt import numpy as np mpl.rcParams['font. ...
- 【转载】 NetworkManager——nmcli命令连接WIFI和创建热点
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/u014695839/article/de ...
- 对于强化学习算法中的AC算法(Actor-Critic算法) 的一些理解
AC算法(Actor-Critic算法)最早是由<Neuronlike Adaptive Elements That Can Solve Difficult Learning Control P ...
- python进程绑定CPU的意义
1. 绑定CPU后对计算密集型的任务可能会一定程度上提升运算性能:(小幅度的性能提升,甚至小幅度落后,总之就是差别不大) 对比1代码A: import os from multiprocessing ...
- 【模板】树的直径(dfs & dp)
树的直径 给定n个点 n-1条边 和每条边的val 输出直径的大小和 直径上的点的序号 input: 8 1 2 2 1 3 1 1 5 10 2 4 3 4 6 4 3 7 5 7 8 2 outp ...
- 微服务全链路跟踪:jaeger增加tag参数
微服务全链路跟踪:grpc集成zipkin 微服务全链路跟踪:grpc集成jaeger 微服务全链路跟踪:springcloud集成jaeger 微服务全链路跟踪:jaeger集成istio,并兼容u ...