一起看 I/O | Flutter 3 正式发布!

作者 / Tim Sneath, Google Flutter 和 Dart 产品组产品经理

Flutter 3 实现了 Flutter 以移动端为中心扩展到多平台的产品规划,并在今年 I/O 大会的主题演讲上正式发布,此次发布提供了对 macOS 和 Linux 桌面端的稳定版支持,同时包括 Firebase 集成的改进,增加了与生产力和性能相关的新特性,并对 Apple 芯片提供了支持。

Flutter 3 的演进

创建 Flutter 的初衷是为了彻底改变应用开发:将 「Web 应用的迭代开发模式」与「硬件加速的图形渲染」和「像素级的控制」三者结合——之前只有游戏才能这么做。自 Flutter 1.0 Beta 版发布以来的四年里,我们逐渐在这些基础上发展,增加了新的框架功能和新的 widget,与底层平台进行了更深入的整合,还加入了丰富的 package 库,此外还进行了许多性能和工具等方面的改进。

随着 Flutter 逐渐产品走向成熟,越来越多的人开始用它来构建应用。今天,有超过 50 万个应用使用 Flutter 发布。来自 data.ai 等研究公司的分析以及公众的评价都可以表明,Flutter 正被许多细分领域的客户所使用。其使用场景非常广泛,从微信 (WeChat) 等社交应用,到 Betterment 和 Nubank 等金融和银行类应用,再到 SHEIN 和 trip.com 等商旅应用以及 Fastic、Tabcorp 等生活方式类的应用,还有 My BMW 此类的硬件连接类应用,最后是巴西政府等公共机构的官方应用等等,都有 Flutter 在大放异彩。

现在已有超过 50 万个应用使用 Flutter 构建。

开发者告诉我们,Flutter 帮助他们在更多的平台上更快地构建出了精美的应用。我们最新的用户研究也表明:

  • 91% 的开发者认为 Flutter 缩短了构建和发布应用的时间。
  • 85% 的开发者认为 Flutter 使他们的应用比以前更加精美。
  • 85% 的开发者认为 Flutter 使他们的应用能在更多平台上发布。

Sonos 在 最近的一篇博客文章 中讨论了他们对设置体验的改版工作,其中着重强调了上述的第二点:

毫不夸张地说,Flutter 为我们带来了一种 “高级感”,这与我们团队之前提供的任何东西都不一样。对我们的设计师来说,最重要的是,他们可以轻松地构建新的用户界面,这意味着我们团队在面对各种设计规格时,会更少说 “做不到”,而更多地直接进行迭代。如果您觉得我们的说法有道理,我们推荐您试试 Flutter —— 至少我们非常庆幸当初选择了它。

欢迎来到 Flutter 3

Flutter 3 正式发布,至此,Flutter 的跨平台之旅迈入高潮。有了 Flutter 3,您就可以仅用一套代码库,为 6 个平台构建精美的体验。它为开发者提供了无与伦比的生产力,并使初创团队从第一天起就能将新的想法投放到完全可用的市场中。

在以前的版本中,我们已经在 iOS 和 Android 平台之外增加了 Web 端 和 Windows 平台 的支持,现在,Flutter 3 增加了对 macOS 和 Linux 应用的稳定支持。增加平台支持需要的不仅仅是渲染像素这么简单: 还包括对新的输入和交互模型的支持、编译和构建的支持、无障碍和国际化支持,以及特定平台的整合。我们的目标是,让您能够灵活地充分利用底层操作系统,同时根据您的选择尽可能多地共享用户界面和逻辑。

在 macOS 上,我们已经投入资源支持 Intel 处理器和 Apple 芯片,并提供 通用二进制 (Universal Binary) 文件) 的支持,使应用能够打包成在两种架构上都能原生运行的可执行文件。在 Linux 上,Canonical 和 Google 已经合作为开发者们带来了高度集成的最佳开发工具。

Superlist 是一个很好的例子,告诉大家 Flutter 是如何帮助您实现精美桌面体验的,它今天推出了 Beta 版本供大家体验。Superlist 提供了超强的协作功能,通过一个崭新的应用将列表、任务和自由形式的内容结合在一起,将待办事项和个人计划等功能打磨得焕然一新。Superlist 团队选择 Flutter,是因为它能够提供快速且高度品牌化的桌面体验。我们认为,他们迄今为止的进展表明这是一个非常明智的选择。

Flutter 3 还对许多基本要素进行了改进,提高了性能,强化了对 Material You 的支持,并进一步提升了生产力。

除了上面提到的内容外,在这个版本中,Flutter 已经完全支持在 Apple 芯片 上进行原生开发。虽然自 M1 处理器诞生以来,Flutter 就一直与搭载 M1 的苹果设备兼容,但 Flutter 现在充分利用了 Dart 对 Apple Silicon 的支持,在搭载 M1 的设备上实现了更快的编译,并支持 macOS 应用的通用二进制文件。

在这个版本中,我们对 Material Design 3 所做的支持工作已基本完成。开发者们现在可以尽情使用这套自适应性强、跨平台的设计系统,包括其动态颜色方案和经过更新的视觉组件。

我们也将在近期发布更详细的技术文章,并在其中更多介绍这部分内容,以及 Flutter 3 的许多其他新功能。

Flutter 由 Dart 编程语言提供强有力的支持,这是一种用于多平台开发的高生产力、可移植的语言。我们在这个发布周期中对 Dart 的改进工作包括: 枚举支持成员变量、改进的超类参数继承,以及更为灵活的命名参数相关的新的语言特性;同时为 package:lints 开启了 2.x 版本,这是一套官方的 lint 规则,是根据我们总结的 Dart 最佳实践整合而成的一个 lint 规则集;与此同时,我们也更新了核心库的 API 文档,为其带来了丰富的示例代码。并且,为了改善平台集成特性,我们在 Flutter 插件中提供了一个新的模版,使用 dart:ffi 与原生平台进行 C 语言的互操作、对 RISC-V 指令集提供实验性支持,以及对 macOS 和 Windows 可执行文件的签名支持。如果想要了解 Dart 2.17 中所有新改进的细节情况,请关注将在近期发布的文章。

Firebase 和 Flutter

当然,构建应用不仅仅是构建用户界面框架。应用发布者需要一套全面的工具,来帮助他们构建、发布和运营自己的应用,包括认证、数据存储、云端功能和设备测试等服务。目前已有多种服务支持 Flutter,包括 Sentry、AppWrite 和 AWS Amplify。

Firebase 是由 Google 提供的应用服务平台。SlashData 的开发者基准研究 显示,62% 的 Flutter 开发者在其应用中使用 Firebase。因此,在过去的几个版本中,我们一直在与 Firebase 合作对两者的集成进行扩展和改良,并将其打造成 Flutter 的首选集成服务。这包括将 Flutter 的 Firebase 插件升级到 1.0,增加更好的文档和工具,以及提供像 FlutterFire UI 这样的新 widget,为开发者提供可重用的认证和用户资料界面。

今天,我们宣布 Flutter 和 Firebase 的整合已成为 Firebase 产品核心的一部分并得到完全的支持。我们已将源代码和文档转移到 Firebase 的主 repo 和网站中。Firebase 对 Flutter 的支持将和 Android 和 iOS 端的支持同步发展。

此外,我们还进行了重大改进,以支持 Flutter 应用使用 Crashlytics (这是 Firebase 中很受欢迎的实时崩溃报告服务)。随着 Flutter Crashlytics 插件的更新,您可以使用与 iOS 和 Android 开发者相同的功能集来实时跟踪致命错误。其中包括重要警报和指标,如 “无崩溃用户”,帮助您保持应用的稳定性。Crashlytics 的分析管线已经升级,以改善 Flutter 崩溃的聚合处理,使其能更快地分级、优先处理和修复问题。最后,我们简化了插件的设置过程,因此您只需要几个步骤就可以直接通过 Dart 代码设置并使用 Crashlytics。

Flutter 休闲游戏工具包

对于大多数开发者来说,Flutter 是一个应用框架。但是,利用 Flutter 提供的硬件图形加速支持和 Flame 等开源游戏引擎,围绕休闲游戏开发而建立的社区也在不断壮大。我们希望让休闲游戏开发者更容易上手,所以在今天的 I/O 大会上,我们发布了 Flutter 休闲游戏工具包 (Casual Game Toolkit),它提供了模板、最佳实践入门套件,还为您准备了可用于广告和云服务的赞助额度。

虽然 Flutter 并不是为高强度的 3D 动作游戏而设计的,但如今,一部分这类游戏在独立于游戏场景之外的用户界面部分也开始使用 Flutter 来实现,包括 PUBG Mobile 这样拥有数亿用户的流行游戏。在 I/O 大会上,我们想看看我们能把技术推进到什么程度,所以我们创建了一个有趣的弹球游戏,它使用到了 Firebase 和 Flutter 的 web 端支持。I/O Pinball 弹球游戏提供了一个定制桌面,围绕着 Google 最受欢迎的四个吉祥物进行设计,它们分别是: Flutter 的 Dash、Firebase 的 Sparky、Android 机器人和 Chrome 恐龙,您可以在这个游戏中与他人一较高下。我们希望通过这种有趣方式展示 Flutter 的多功能性。

Flutter: 由 Google 支持,由社区驱动

我们喜欢 Flutter 的一点是,它不仅仅是 Google 的产品——它是一个「属于所有人」的产品。开源意味着我们都可以参与其中,并与它的成功息息相关。您可以贡献新的代码或文档,创建 package 来为核心框架赋予新的超能力,编写教导他人的书籍和培训课程,还可以帮助组织活动和用户社群,等等。

为了展示社区的精彩,我们最近与 DevPost 合作,赞助了 Puzzle Hack 挑战,让开发者们通过 Flutter 来演绎经典的滑动拼图游戏,以展示他们的技能。这场活动呈现了 web、桌面和移动端完美结合的场景: 现在大家都可以通过浏览器或应用商店玩到这些游戏。

感谢您对 Flutter 的支持,欢迎来到 Flutter 3!

一起看 I/O | Flutter 3 正式发布相关推荐

  1. Flutter 2 正式发布!

    3月4日凌晨,Flutter 2 正式发布: 开发者为任何平台创建美观.快速且可移植应用的能力得以更上一层楼.通过 Flutter 2,您可以使用相同的代码库为五种操作系统构建原生应用: iOS.An ...

  2. Flutter 3 正式发布

    文 / Tim Sneath, Google Flutter 和 Dart 产品组产品经理 Flutter 3 实现了 Flutter 以移动端为中心扩展到多平台的产品规划,并在今年 I/O 大会的主 ...

  3. Flutter 中文文档网站 flutter.cn 正式发布!

    在通常的对 Flutter 介绍中,最耳熟能详的是下面四个特点: 精美 (Beautiful):充分的赋予和发挥设计师的创造力和想象力,让你真正掌控屏幕上的每一个像素. 极速 (Fast):基于 Sk ...

  4. android xposed 闲鱼,看闲鱼flutter,Android的Flutter依赖抽取实现的一些疑问

    摘自https://juejin.im/post/5b5811... 编译Flutter工程. 这部分主要工作是编译Flutter的dart和资源部分,可以用AOT和Bundle命令编译. echo  ...

  5. 一起看 I/O | Flutter 3 更新详解

    作者 / Kevin Jamaul Chisholm, Technical Program Manager for Dart and Flutter at Google 又到了 Flutter 稳定版 ...

  6. 看雪论坛精华8正式发布

    首先祝贺看雪学院建站七周年! 感谢那些关心和支持看雪论坛发展的朋友们!每到论坛最困难的时候,是他们伸出援助之手才让论坛度过一个个的难关走到今天! 看雪论坛是大家交流加解密技术的一个场所,主要研究软件加 ...

  7. 分享不同,精彩纷呈 | 开发者说·DTalk 年中鉴赏

    时光荏苒,悄然过半.在 2022 上半年,我们迎接了 Flutter 3,成功通往了 Dart 2.17,抵达了 Android 13 平台稳定性里程碑,同时也见证了 Chrome OS 的第 100 ...

  8. Android高级架构工程师:2019年火爆全网的flutter,今年真的凉了吗?你是怎么看的

    作者:阿里巴巴淘系技术 链接:https://www.zhihu.com/question/374113031/answer/1252582543 前言 去年,2019 年无疑是 Flutter 技术 ...

  9. Flutter实践之高仿有妖气漫画,从消息中间件看分布式系统的多种套路

    这就是一个Widget,Container是Widget的一个子类,当然它里面有各种各样的子类供你使用. Dart Dart语言可以说对于移动端开发来说,都比较陌生,因为纯原生开发到现在,我只听说过可 ...

最新文章

  1. linux无法解析主机地址(could not resolve host)解决办法
  2. 管理系统中计算机应用知识总结,自考《管理系统中计算机应用》章节知识点复习:管理信息...
  3. CentOS 6.3安装Nginx开启目录浏览、下载功能
  4. 高性能MySQL-3rd-(六)查询性能优化
  5. 【Post工具】PostMan 他媳妇 PostWoman
  6. linux ls命令shell脚本位置,linux - shell脚本到ls并在ls上执行命令结果 - SO中文参考 - www.soinside.com...
  7. C#图解教程 第十八章 枚举器和迭代器
  8. 原来,我们的时间这样被科技巨头们瓜分(转)
  9. php读取图片输出,php读取图片流输出到页面图片
  10. 几个常用的shell脚本
  11. Windows下连接Linux的ssh工具有哪些
  12. 盈建科中地震波_[GMS][地震波][选波]YJK地震波反应谱分析与地震波选取
  13. workflow-工作流
  14. 一些有意思的函数(连载中)
  15. that being said
  16. ant design of vue中表格列内容过长,需要截取并且鼠标滑过悬浮显示全部内容
  17. 再深一点:如何给女朋友解释什么是微服务?
  18. 计算机术语中的letters表示,letter是什么意思_letter在线翻译_英语_读音_用法_例句_海词词典...
  19. 大学什么专业会学python-学会python有哪些好处?python抓取知乎神回复
  20. 专访胡润:中国富豪正变得透明

热门文章

  1. 酒钢协同办公系统服务器地址,酒钢协同办公平台门户网站即将上线
  2. http层协议是哪层通信协议
  3. 【计算机毕业设计】基于微信小程序的民宿预订系统
  4. Django 学生信息增删改查
  5. Lebbeus伍兹建筑木
  6. 零时科技 | Cream Finance协议遭黑客闪电攻击事件分析
  7. uniapp picker 国际化 中英文
  8. 软件开发(电子书籍下载 )
  9. 视频教程-一夫老师PR教程Premiere CC2018抖音影视后期视频剪辑制作教程-其他
  10. SEO优化中的交换友情链接注意事项及注意事项