Flutter 2 的新特性:最热门的更新

已发表: 2021-03-11

您一定听说过 Flutter 上周(2021 年 3 月 3 日)发布了第二次更新。 正如公司自己声称的那样,这个版本是一个全面的社区努力,所以你可以期待一些面向开发人员的多汁功能。

Flutter 2.0 包含了新功能,并通过全新和现有功能改进了体验。 让我们去喝茶吧!

Flutter 2 的功能

我们将从全新的功能开始,介绍对现有 Flutter 功能的一些最美味的更新,最后研究品牌的一些更新计划。

稳定的网络应用

Flutter 是一个年轻但广为人知的跨平台开发框架。 它的主要重点是从单一代码库构建原生 iOS 和 Android 应用程序。 Flutter 2 更进一步,将Web 应用程序添加到完全支持的环境列表中。

对于企业主来说,这意味着在更短的时间内接触到更广泛的受众

对于工程师而言,单一代码库有望显着促进和加快开发过程

颤振 2.0。 - 为跨 Android、iOS 和 Web 的跨平台开发而稳定

什么最重要

将 Flutter 应用到跨平台的关键优势在于它强调了在编写单个代码的同时保持体验尽可能接近原生应用程序的能力。 现在,随着 Web 平台的完全稳定,您可以期待使用 Flutter 构建丰富的交互式 Web 应用程序的热潮。

最新更新主要关注三种可能的应用场景:

  • PWAs – 结合最好的移动和网络的渐进式网络应用程序;
  • SPA——在使用过程中不需要重新加载页面的单页应用程序;
  • 移动到网络——现在用 Flutter 编写的现成应用程序可以很容易地翻译成网络

盒子里装了什么?

新的和更好的,Flutter 2.0 在看似简单直观的框架下有一个丰富的填充物。 对于 Web 应用程序,两个最重要的技术方面是:

  • 渲染保真度:基于 CanvasKit 的新渲染器有望显着提高性能并支持现有的 HTML 渲染器。
  • 特定于 Web 的功能:自定义 URL、链接小部件、基于画布的文本测量和自动填充只是 Flutter 现在可用的一些解决方案。 您可以在 Flutter 的网络支持博客文章中了解有关所有新功能的更多信息。

Flutter Web 应用程序还有更多值得期待的地方

虽然 Web 应用程序绝对是 Flutter 跨平台库的一个很好的补充,但在这个版本中仍然缺少某些功能。 特别是,我们希望在“应用程序”中看到更多的“网络”。 以下是 Flutter 团队仍然有时间打得恰到好处的一些主要缺失点:

  • 缺乏与 SEO 相关的解决方案。 当您想到“网络”时,首先想到的就是谷歌和搜索引擎优化。 WordPress 知道这一点,并投入了大量精力来完善其 Yoast 插件。 Flutter 2 不提供任何可以促进的功能,更不用说启用SEO。
  • 初始网页加载时间。 当谈到网页加载所需的时间时,很明显,越快越好。 客户的跳出率 ( Forbes ) 和 Google 的 SEO 偏好 ( SEMRush ) 都告诉我们,一秒或更短的加载速度是更可取的。 然而,由于 Flutter web 需要整个 Flutter 引擎在加载你的 web 应用程序之前启动,它往往会变得更慢,流量也会变得更重。

还有更多工作需要完成,然而,即使仅从这次更新中我们也可以看出,Flutter 团队不打算很快放慢速度!

早期版本:桌面支持

现在,这个还没有完全稳定,所以要准备好一路上的一些惊喜。 从 21 年 3 月上旬开始,您可以将桌面设置为 Flutter 应用程序的部署目标。 这里重要的是,Flutter 桌面几乎与它的主要语言——Dart 密不可分,Dart 最近更新到了 Dart 2.12。

Flutter 桌面主要功能

正如 Flutter 的 Chris Sells 所强调的,这个“测试版快照”的主要目标是“确保文本编辑在每个支持的平台上都像原生体验一样运行”( Medium )。 这可以通过文本选择旋转TextField 小部件等基本功能实现。

Flutter 2 带来的另一个重要改进是ReordableListView ,它极大地促进了开发人员移动项目的过程。 在这里,功能是通过更新的滚动条和方便的把手来实现的,以实现轻松的拖放体验。

发布桌面应用程序所需的文档也已完全更新。 如果你想亲自尝试一下——请参阅 Flutter 文档的完整说明。

Flutter Folio:平台自适应应用

为了确保在 Flutter 中构建的一款应用能够同样适用于他们可能计划覆盖的所有 6 个平台(即 iOS、Android、Web、Windows、macOS 和 Linux),剪贴簿应用程序——Flutter Folio——已经到来。

这是一个在各种尺寸的屏幕上看起来都不错的应用程序示例,它利用了触摸、键盘和鼠标输入,并且确切地知道如何适应每个平台的具体情况。 Folio 的源代码现已在 GitHub 上提供。

Google 移动广告:测试版

另一个让数字营销人员兴奋的测试版! 适用于 Flutter 的 Google Mobile Ads SDK 是一个新插件,专门用于移动设备的叠加层、横幅和原生广告。 它对 Ad Manager 和 Admob 的统一支持使其适用于广告商,无论发布商如何。

改进现有的 Flutter 功能

颤振功能

尽管 Flutter 在投资 Web 应用程序和桌面稳定性方面采取了一些认真的步骤,但这并不意味着他们已经忘记了基础知识。 让我们看一下对框架原始组件的一些最需要的更改

尽管 Flutter 在投资 Web 应用程序和桌面稳定性方面采取了一些认真的步骤,但这并不意味着他们已经忘记了基础知识。 让我们看一下对框架原始组件的一些最需要的更改

跨平台开发服务图标

使用 Flutter 构建杀手级跨平台解决方案

学到更多

iOS 的更多功能

最重要的公告是,在无数次请求之后,Flutter 终于增加了直接从命令行构建 IPA的可能性,而无需依赖 Xcode。 此外,Cupertino 设计语言的实现已经更新了一些新的 UI(例如 iOS 搜索控制台)。

新的 Flutter 小部件

此版本引入了两个新的小部件:AutocompleteCore 和 ScaffoldMessenger。 第一个完全符合您的预期,并通过长期要求的自动完成功能简化了编码过程。 ScaffoldMessenger 致力于解决与SnackBar 相关的问题

添加到应用程序实例

从一开始,Flutter 团队就考虑周全,并确保您可以利用他们的最新更新,即使开发一个全新的应用程序目前不在您的待办事项清单上。

Add-to-App 允许开发人员在不同的移动平台上重用他们的代码。 然而,更重要的是,Add-to-App 可以轻松地将 Flutter 代码添加到现有的原生应用程序中,从而允许开发人员在不同的移动平台上重用他们的代码。 Flutter 2 使用新的 API 将静态内存的成本降低到每个实例大约 180kB。

生态系统更新

Flutter 的最初目标不仅仅是创建一个方便的框架——他们的目标是通过简化核心流程为开发人员提供更好的体验。 这就是为什么以前版本中已有的大量插件和工具都有自己的升级也就不足为奇了。

这包括最流行的插件,如 Core、Authentication、Cloud Firestore 等,以及社区构建的 Flutter Plus 插件。 您可以在此处查看 Flutter 官方 Firebase 插件的完整更新列表,并随时在此处查看 Flutter 社区加插件。

业界对 Flutter 2.0 版本的反应

Flutter 2 不仅在发布后不到一周的时间内作为一个更成熟、更多功能的框架问世,而且一些大型国际公司已经决定长期致力于它!

丰田将在其车辆中使用 Flutter 2

这一切都始于 Ubuntu 在 2021 年 3 月 3 日宣布将 Flutter 作为其应用程序的默认选择。然而,最响亮的消息无疑是丰田最近决定将 Flutter 用于其车载信息娱乐系统。 此外,据说该项目是该行业最具创新性的项目之一,因为 Toyota-Flutter 合作将使用 Embedder API。

当然,随着 Flutter 的不断改进,会有更多品牌效仿丰田的做法。 还有一个问题要回答。

Flutter 2 是什么意思?

首先,Flutter 2 是对所有从一开始就不相信它的仇恨者的及时回应。 这么多独立组件的发布证明了谷歌(作为 Flutter 框架背后的主要名称)和社区都相信他们所做的事情。 如果您不依赖数字,但需要看到现实生活中的结果来拥抱某些东西 - 此更新是您的警钟。

如果您仍然不确定 Flutter 是否比 Kotlin Multiplatform (KMM) 更好,或者在 Flutter 与 React Native 的比较中是否有机会 - Flutter 2 应该消除任何疑虑。 如果你担心这个框架还太年轻而没有坚实的基础——相信 Flutter 开发公司,它在这一切开始时就在那里。

与 Miquido 合作,充分利用 Flutter 2.0 的潜力!