它来了!Flutter3.0发布全解析

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 它来了!Flutter3.0发布全解析

我们在手机、桌面和网络上进行多平台UI开发的历程达到了顶峰。

我们很高兴地宣布,作为谷歌I/O主题演讲的一部分,我们今天推出了Flutter 3。Flutter 3完成了我们从以移动为中心到多平台框架的路线图,提供了对macOS和Linux桌面应用的支持,以及对Firebase集成的改进,新的生产力和性能特性,并支持Apple Silicon。

The journey to Flutter 3

我们创办Flutter的初衷是试图彻底改变应用开发:将网络的迭代开发模式与硬件加速图形渲染和像素级控制相结合,而这在以前是游戏的专利。自Flutter 1.0测试版以来的四年里,我们逐渐在这些基础上发展,增加了新的框架功能和新的小工具,与底层平台更深入的整合,丰富的包库和许多性能和工具的改进。

image.png

随着产品的成熟,越来越多的人开始用它构建应用程序。今天,有超过50万个应用程序是用Flutter建立的。来自data.ai等研究公司的分析,以及公众的评价,表明Flutter被许多细分领域的客户所使用:从微信等社交应用到Betterment和Nubank等金融和银行应用;从SHEIN和trip.com等商务应用到Fastic和Tabcorp等生活方式应用;从My BMW等伴侣应用到巴西政府等公共机构。

今天,有超过50万个应用程序使用Flutter构建。

开发人员告诉我们,Flutter有助于在更多的平台上更快地构建漂亮的应用程序。在我们最新的用户研究中。

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

在Sonos最近的一篇博客文章中,讨论了他们改造后的设置体验,他们强调了其中的第二个问题。

"毫不夸张地说,[Flutter]释放了一种与我们团队之前交付的任何东西都不同的 "高级 "程度。对我们的设计师来说,最重要的是,可以轻松地构建新的UI,这意味着我们的团队花在对规格说 "不 "的时间更少,花在迭代上的时间更多。如果这听起来值得,我们会推荐你试一试Flutter--我们很高兴这样做。"

Introducing Flutter 3

今天,我们推出Flutter 3,这是我们填补Flutter所支持的平台的旅程的高潮。有了Flutter 3,您可以从一个代码库中为六个平台构建更好的体验,为开发者提供无与伦比的生产力,并使初创企业从第一天起就能将新的想法带到完整的可触达市场。

在以前的版本中,我们用网络和Windows支持来补充iOS和Android,现在Flutter 3增加了对macOS和Linux应用的稳定支持。增加平台支持需要的不仅仅是渲染像素:它包括新的输入和交互模型、编译和构建支持、可访问性和国际化,以及特定平台的整合。我们的目标是让你能够灵活地充分利用底层操作系统,同时尽可能多地分享你选择的用户界面和逻辑。

在macOS上,我们已经支持英特尔和苹果Silicon,并提供通用二进制支持,使应用程序能够打包可执行文件,在两种架构上原生运行。在Linux上,Canonical和谷歌已经合作为开发提供了一个高度集成的、最好的选择。

Superlist是Flutter如何实现美丽的桌面体验的一个很好的例子,它今天推出了测试版。Superlist提供了超强的协作,通过一个新的应用程序,将列表、任务和自由形式的内容结合在一起,成为待办事项和个人计划的新方式。Superlist团队选择Flutter是因为它能够提供快速、高度品牌化的桌面体验,我们认为他们迄今为止的进展证明了为什么它被证明是一个伟大的选择。

Flutter 3还对许多基本要素进行了改进,提高了性能,支持Material You,并更新了生产力。

除了上述工作外,在这个版本中,Flutter可以完全原生在苹果芯片上进行开发。虽然Flutter自发布以来一直与M1驱动的苹果设备兼容,但Flutter现在充分利用了Dart对苹果芯片的支持,在M1驱动的设备上实现了更快的编译,并支持macOS应用程序的通用二进制文件。

在这个版本中,我们为Material Design 3所做的工作基本完成,使开发者能够利用一个适应性强、跨平台的设计系统,提供动态的色彩方案和更新的视觉组件。

image.png

我们详细的技术博文阐述了这些以及Flutter 3的许多其他新功能。

Flutter由Dart驱动,这是一种用于多平台开发的高生产力、可移植的语言。我们在这个周期中对Dart的工作包括减少模板和帮助可读性的新语言功能,实验性的RISC-V支持,升级的linter和新的文档。关于Dart 2.17中所有新改进的进一步细节,请查看专用博客:https://medium.com/dartlang

Firebase and Flutter

当然,建立一个应用程序不仅仅是一个UI框架。应用程序发布者需要一套全面的工具来帮助你构建、发布和运营你的应用程序,包括认证、数据存储、云功能和设备测试等服务。有多种服务支持Flutter,包括Sentry、AppWrite和AWS Amplify。

谷歌提供的应用服务是Firebase,SlashData的开发者基准研究显示,62%的Flutter开发者在其应用中使用Firebase。因此,在过去的几个版本中,我们一直在与Firebase合作,以扩大和更好地将Flutter作为一个一流的集成。这包括将Flutter的Firebase插件提高到1.0,增加更好的文档和工具,以及像FlutterFire UI这样的新部件,为开发者提供可重用的auth和profile界面的UI。

今天,我们宣布Flutter/Firebase的整合将成为Firebase产品中完全支持的核心部分。我们将源代码和文档转移到Firebase的主仓库和网站中,你可以指望我们与Android和iOS同步发展Firebase对Flutter的支持。

此外,我们还进行了重大改进,以支持使用Crashlytics的Flutter应用程序,这是Firebase流行的实时崩溃报告服务。随着Flutter Crashlytics插件的更新,你可以实时跟踪致命的错误,为你提供与其他iOS和Android开发者相同的功能集。这包括重要的警报和指标,如 "无崩溃用户",帮助你保持你的应用程序的稳定性。

Crashlytics分析管道已经升级,以改善Flutter崩溃的聚类,使其更快地分流、优先处理和修复问题。最后,我们简化了插件的设置过程,因此只需要几个步骤就可以使用Crashlytics,并从你的Dart代码中开始运行。

Flutter Casual Games Toolkit

对于大多数开发者来说,Flutter是一个应用程序框架。但是,围绕休闲游戏开发的社区也在不断壮大,利用Flutter提供的硬件加速图形支持和Flame等开源游戏引擎。我们希望让休闲游戏开发者更容易上手,所以在今天的I/O大会上,我们宣布了休闲游戏工具包,它提供了一个模板和最佳实践的入门套件,以及广告和云服务的良好体验。

image.png

虽然Flutter并不是为高强度的3D动作游戏而设计的,但即使是一些游戏也转向Flutter的非游戏UI,包括像PUBG Mobile这样拥有数亿用户的流行游戏。而对于I/O,我们想看看我们能把技术推到什么程度,所以我们创造了一个有趣的弹球游戏,它由Firebase和Flutter的网络支持提供支持。I/O弹球游戏提供了一个围绕谷歌最喜欢的四个吉祥物设计的定制桌子。Flutter的Dash、Firebase的Sparky、Android机器人和Chrome的恐龙,并让你与他人竞争高分。我们认为这是一种展示Flutter多功能性的有趣方式。

image.png

Sponsored by Google, powered by community

我们喜欢Flutter的一点是,它不仅仅是谷歌的产品--它是一个 "所有人 "的产品。开源意味着我们都可以参与其中,并与它的成功息息相关,无论是通过贡献新的代码或文档,创建赋予核心框架新的超能力的包,编写教导他人的书籍和培训课程,还是帮助组织活动和用户组。

为了展示社区的最佳状态,我们最近与DevPost合作赞助了一个Puzzle Hack挑战,为开发者提供了一个机会,通过用Flutter重新想象经典的滑动拼图来展示他们的技能。这证明了网络、桌面和移动的完美结合:现在我们都可以在线或通过商店玩这些游戏。

我们把这个视频放在一起,展示了我们最喜欢的一些作品和获奖者;我们认为你会喜欢它。

https://youtu.be/l6hw4o6_Wcs

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

Google I/O 大会全程回放视频已生成

点击链接观看!

相关文章
|
2月前
|
容器
Flutter Widget 解析
Flutter Widget 解析
|
5月前
|
开发工具
Flutter-AnimatedWidget组件源码解析
Flutter-AnimatedWidget组件源码解析
195 60
|
3月前
|
消息中间件 编解码 开发者
深入解析 Flutter兼容鸿蒙next全体生态的横竖屏适配与多屏协作兼容架构
本文深入探讨了 Flutter 在屏幕适配、横竖屏切换及多屏协作方面的兼容架构。介绍了 Flutter 的响应式布局、逻辑像素、方向感知、LayoutBuilder 等工具,以及如何通过 StreamBuilder 和 Provider 实现多屏数据同步。结合实际应用场景,如移动办公和教育应用,展示了 Flutter 的强大功能和灵活性。
191 6
|
3月前
|
UED
<大厂实战经验> Flutter&鸿蒙next 中使用 initState 和 mounted 处理异步请求的详细解析
在 Flutter 开发中,处理异步请求是常见需求。本文详细介绍了如何在 `initState` 中触发异步请求,并使用 `mounted` 属性确保在适当时机更新 UI。通过示例代码,展示了如何安全地进行异步操作和处理异常,避免在组件卸载后更新 UI 的问题。希望本文能帮助你更好地理解和应用 Flutter 中的异步处理。
111 3
|
3月前
|
JavaScript API 开发工具
<大厂实战场景> ~ Flutter&鸿蒙next 解析后端返回的 HTML 数据详解
本文介绍了如何在 Flutter 中解析后端返回的 HTML 数据。首先解释了 HTML 解析的概念,然后详细介绍了使用 `http` 和 `html` 库的步骤,包括添加依赖、获取 HTML 数据、解析 HTML 内容和在 Flutter UI 中显示解析结果。通过具体的代码示例,展示了如何从 URL 获取 HTML 并提取特定信息,如链接列表。希望本文能帮助你在 Flutter 应用中更好地处理 HTML 数据。
154 1
|
3月前
|
Dart 安全 编译器
Flutter结合鸿蒙next 中数据类型转换的高级用法:dynamic 类型与其他类型的转换解析
在 Flutter 开发中,`dynamic` 类型提供了灵活性,但也带来了类型安全性问题。本文深入探讨 `dynamic` 类型及其与其他类型的转换,介绍如何使用 `as` 关键字、`is` 操作符和 `whereType<T>()` 方法进行类型转换,并提供最佳实践,包括避免过度使用 `dynamic`、使用 Null Safety 和异常处理,帮助开发者提高代码的可读性和可维护性。
119 1
|
3月前
|
开发框架 Dart Android开发
安卓与iOS的跨平台开发:Flutter框架深度解析
在移动应用开发的海洋中,Flutter作为一艘灵活的帆船,正引领着开发者们驶向跨平台开发的新纪元。本文将揭开Flutter神秘的面纱,从其架构到核心特性,再到实际应用案例,我们将一同探索这个由谷歌打造的开源UI工具包如何让安卓与iOS应用开发变得更加高效而统一。你将看到,借助Flutter,打造精美、高性能的应用不再是难题,而是变成了一场创造性的旅程。
|
6月前
|
开发者 监控 开发工具
如何将JSF应用送上云端?揭秘在Google Cloud Platform上部署JSF应用的神秘步骤
【8月更文挑战第31天】本文详细介绍如何在Google Cloud Platform (GCP) 上部署JavaServer Faces (JSF) 应用。首先,确保已准备好JSF应用并通过Maven构建WAR包。接着,使用Google Cloud SDK登录并配置GCP环境。然后,创建`app.yaml`文件以配置Google App Engine,并使用`gcloud app deploy`命令完成部署。最后,通过`gcloud app browse`访问应用,并利用GCP的监控和日志服务进行管理和故障排查。整个过程简单高效,帮助开发者轻松部署和管理JSF应用。
76 0
|
6月前
|
开发者 容器 Java
Azure云之旅:JSF应用的神秘部署指南,揭开云原生的新篇章!
【8月更文挑战第31天】本文探讨了如何在Azure上部署JavaServer Faces (JSF) 应用,充分发挥其界面构建能力和云平台优势,实现高效安全的Web应用。Azure提供的多种服务如App Service、Kubernetes Service (AKS) 和DevOps简化了部署流程,并支持应用全生命周期管理。文章详细介绍了使用Azure Spring Cloud和App Service部署JSF应用的具体步骤,帮助开发者更好地利用Azure的强大功能。无论是在微服务架构下还是传统环境中,Azure都能为JSF应用提供全面支持,助力开发者拓展技术视野与实践机会。
25 0
|
6月前
|
开发框架 API 开发者
Flutter表单控件深度解析:从基本构建到高级自定义,全方位打造既美观又实用的移动端数据输入体验,让应用交互更上一层楼
【8月更文挑战第31天】在构建美观且功能强大的移动应用时,表单是不可或缺的部分。Flutter 作为热门的跨平台开发框架,提供了丰富的表单控件和 API,使开发者能轻松创建高质量表单。本文通过问题解答形式,深入解读 Flutter 表单控件,并通过具体示例代码展示如何构建优秀的移动应用表单。涵盖创建基本表单、处理表单提交、自定义控件样式、焦点管理和异步验证等内容,适合各水平开发者学习和参考。
143 0

推荐镜像

更多