关于flutter:无限可能-Flutter-2-重点更新一览

47次阅读

共计 11430 个字符,预计需要花费 29 分钟才能阅读完成。

有限可能 | Flutter 2 重点更新一览

咱们非常高兴在本周公布了 Flutter 2。自 Flutter 1.0 公布至今已有两年多的工夫,在如此短暂的工夫内,咱们解决了 24,541 个 issue,合并了来自 765 个贡献者的 17,039 个 PR。自九月公布 Flutter 1.22 以来,咱们已解决 5,807 个 issue,合并了来自 298 个贡献者的 4,091 个 PR。在此特别感谢宽广的贡献者,将业余时间慷慨地投入到 Flutter 我的项目的优化中。Flutter 2 的卓越贡献者有 xu-baolin (奉献了 46 个 PR)、a14n (奉献了 32 个 PR;专一于为 Flutter 引入空平安) 和 hamdikahloun (奉献了 20 个 PR;优化了一系列 Flutter 插件)。然而,为 Flutter 我的项目做出奉献的不只有开发者,还有咱们负责评审 1,525 个 PR 的泛滥 PR 评审员,其中包含 hamdikahloun (身兼数职!)、CareF 和 YazeedAlKhalaf (年仅 16 岁!) 等人。Flutter 是真正的社区合力之作,如果没有问题反馈者、PR 贡献者和代码评审员,版本 2 便无奈问世,是你们带来了这一新版本。

Flutter 2 的公布也带来了许多振奋人心的内容。您能够浏览图文《Flutter 2 正式公布!》,疾速理解 Flutter 2 和 Dart 2.12 中的新增性能,以及咱们的客户及合作伙伴是如何应用 Flutter 2 的。咱们将在下周的图文中为大家具体介绍如何在生产环境中应用 Flutter web 稳定版 并施展其劣势。

上面咱们一起来具体理解下 Flutter 2 的新增性能吧!

Web

从当初开始,Flutter web 的反对曾经从 Beta 版过渡到稳固阶段。随着首个稳固版本的公布,Flutter 通过对 web 平台的反对,将代码的复用性晋升到了一个新高度。当初,当您安稳运行 Flutter 利用时,能够将 web 作为一个新的适配方向。

作为一家致力于通过数字化实现卓越经营的古代挪动虚构网络运营商,Moi Mobiili 抉择应用 Flutter 构建其 Mun Moi 客户经理利用,并在近期公布了其 web 版利用。

借助 web 平台的诸多劣势,Flutter 为构建丰盛的交互式 web 利用奠定了根底。咱们的首要重点是晋升性能并优化渲染。除了 HTML 渲染引擎外,咱们还新增了一个基于 CanvasKit 的渲染引擎,以及一些如 Link Widget 等特定于 web 的性能,以确保您的利用可能像 web 利用一样在浏览器中稳固运行。

无关此 Flutter web 稳定版 的更多详情,请参阅 Flutter web 公布文章:

空平安

健全的空平安是对 Dart 语言的重要补充,它通过辨别可空类型和不可空类型来进一步增强类型零碎。这使开发者可能避免 null error 解体,这也是导致利用解体的常见起因。通过将空查看合并到类型零碎中,能够在开发期间捕捉这些谬误,从而避免生产环境中的解体。在蕴含 Dart 2.12 的 Flutter 2 中,健全的空平安失去了充沛的反对。要理解更多细节,请参阅 Dart 2.12 公布文章:

pub.dev 曾经公布了 超过 1,000 个空平安 package,包含来自 Dart、Flutter、Firebase 和 Material 团队公布的数百个 package。如果您也是 package 的作者,请参阅 迁徙指南 并着手迁徙事项。

桌面设施

在新版本中,Flutter 对桌面设施的反对曾经进入稳固版本的后期筹备阶段。也就是说,您当初能够尝试将其作为您 Flutter 利用的部署指标: 把它看作最终稳定版公布前的预览,最终稳固版本将于往年晚些时候公布。

Flutter 桌面版通过一系列大大小小的优化,才达到当初的品质。咱们率先从文本编辑动手,确保其在每个反对平台上都能令 文本抉择点 等基本功能取得如原生般的顺畅运行体验,并可能 在键盘事件通过解决后将其勾销。在鼠标输出方面,咱们也已确保,当解决触摸输出以及在 Material 和 Cupertino 设计语言的 TextField 和 TextFormField 中增加内置上下文菜单,并 在 ReorderableListView 上提供抓取控点 时,应用高精度定点设施的拖放事件将立刻开始,没有任何提早。另外,内置的上下文菜单曾经增加至以 Material 和 Cupertino 为设计语言的 TextField 及 TextFormField widget 中,ReorderableListView widget 增加了抓取控点性能。

ReorderableListView 现已反对抓取控点,便于鼠标轻松拖动

开发者能够应用 ReorderableListView 轻松挪动我的项目,但用户须要长按我的项目以启用拖动操作。该设计在挪动设施上很正当,但很少有桌面平台的用户会想到用鼠标长按某个我的项目来挪动它,所以新版本提供了一个实用于鼠标或触摸输出的抓取控点。依照同样的思路,对于因平台而异的习用性能,新版本提供了一个 通过降级的滚动条,可使其与桌面平台完满适配。

新版本中的滚动条 widget 已适配桌面平台

更新后的 Scrollbar Widget 为桌面平台提供了预期的雷同交互性能,例如反对拇指拖动、点击滚动条空白区域进行高低翻页,以及将鼠标悬停在滚动条的任何部位以显示一个轨道等。此外,因为滚动条能够通过 新增的 ScrollbarTheme 类设定主题,您能够依据您的利用对其外观和感觉进行个性化设计。

对于其余桌面平台的特定性能,本版本还为 Flutter 利用启用了命令行参数解决,这样一来,您能够通过在 Windows 文件资源管理器中双击鼠标等简略操作来关上利用中的文件。此外,咱们还致力使 Windows 和 macOS 上的大小调整操作变得更加晦涩,并面向寰球用户推出了输入法 (IME) 反对。

Flutter 桌面现反对输入法间接输出

咱们还提供了更新的 文档,以领导您做好筹备,将利用部署到相应的操作系统商店中。您无妨参考一下,如发现有任何脱漏,请反馈给咱们。

试用 Flutter 桌面 Beta 版时,您能够按需切换到 beta 渠道来进行拜访,并依照 Flutter 文档上的阐明 设置指标平台的配置标记。此外,咱们还在稳固渠道中新增了 Beta 版的快照。当您应用 “flutter config” 启用其中一个桌面配置设置 (如 enable-macos-desktop 时),您能够间接尝试应用桌面 Beta 版性能,而无需再经验返回 Beta 渠道、获取残缺的 Beta 版及构建工具等漫长的过程。您无妨亲自尝试一下,或把桌面反对作为一个简略的 “Flutter 模拟器 ”,十分好用。

然而,如果您抉择持续通过稳固渠道应用桌面 Beta 版,那么您将无奈像切换到 Beta 或开发渠道时那样疾速获取新性能或谬误修复,因而,如果您以 Windows、macOS 或 Linux 为明确指标,咱们建议您切换到更新速度更快的渠道。

在开发稳定版 Flutter 桌面反对过程中,咱们深知将来还有很多工作要做,包含反对原生顶级菜单集成、提供如同独立平台一样的文本编辑体验和无障碍性能反对,以及个别破绽修复和性能加强。如果您认为桌面平台在投入生产之前依然有一些中央须要欠缺,望 不吝赐教!

平台自适应利用示例: Flutter Folio

当初 Flutter 已可在三个平台 (Android、iOS 和 web) 上为生产环境的利用提供反对,还有三个平台仍处于测试阶段 (Windows、macOS 和 Linux),那么问题来了: 如何开发一款利用,能够良好适应多种不同屏幕规格 (大、中、小屏幕)、不同输出模式 (触控、键盘和鼠标) 和不同习用设施 (挪动、web 和桌面)?为了给本人以及各地的宽广 Flutter 开发者解决这个问题,Flutter Folio 利用应运而生。

您可将 Folio 视作一个简略的示例利用,帮忙您在多个平台上利用繁多代码库良好地运行利用。” 良好运行 ” 是指它能在大、中、小屏幕上失常显示,并能利用触控、键盘和鼠标输出,还可适应不同平台的格调,例如应用 web 上的链接、应用桌面设施上的菜单等等。咱们将此类利用称为 “ 平台自适应利用 ”,因为这类利用能良好地适应所运行的任何平台。

如需查看如何使利用自适应平台,请参阅 Folio 的源代码。将来,心愿能有更为深刻地探讨此主题的文档和 codelabs 呈现。您还能够浏览和观看 Aloïs Deniel 对于该主题的 博文和视频。

Google Mobile Ads 公布 Beta 版

除了公布 Flutter 桌面 Beta 版外,咱们也非常高兴地公布了 Google Mobile Ads SDK for Flutter 的公开 Beta 版。这是一个全新插件,除了原有的叠加格局 (叠加横幅、插页和激励视频广告),咱们还在其中新增了内联横幅及原生广告。另外,咱们还在此插件中提供了 Ad Manager 和 Admob 反对,无论您是何种规模的公布商,这款插件都能满足您的需要。

在公开公布 Beta 之前,咱们邀请了一些客户参加试用这款插件。许多客户都应用了这些新增的广告格局胜利地公布了利用。例如,Sua Musica (拉丁美洲最大的独立艺术家音乐平台,领有超过 15,000 位认证音乐人和一千万沉闷用户) 应用了 Google Mobile Ads SDK for Flutter 插件公布了新的利用。其广告展现量减少了 350%,点击率减少了 43%,千次展现收益上涨了 13%。

您此刻就可应用该 插件 ) 了。在刚完结的 Flutter Engage 上,Andrew 和 Zoey 围绕《如何通过 Flutter 利用获利》介绍了一些 Flutter 利用创收策略,以及如何在 Flutter 利用中加载广告,您能够查看下方视频理解具体内容。此外,咱们在 flutter.dev 上创立了一个新的 Ads 页面,不便您查找所需资源,如 插件使用指南,内联横幅和原生广告 codelab,以及叠加横幅,插页和激励视频广告 codelab,欢迎您随时查看。更多信息请查看 如何通过 Flutter 利用获利 视频。

新增 iOS 性能

在一直进步对其余平台反对的同时,咱们并没有将 iOS 抛诸脑后。事实上,新版本提供了 178 个与 iOS 相干的合并 PR,其中包含将状态复原 (State Restoration) 引入 iOS 的 23495,应开发者需要——不必关上 Xcode 就能够间接从命令行建设 IPA 的 67781,以及更新 CocoaPods 版本以配合最新工具的 69809。此外,咱们还在 Cupertino 设计语言实现中增加了一些 iOS 小部件。

新增的 CupertinoSearchTextField 为 iOS 提供了搜寻栏 UI。

CupertinoFormSection、CupertinoFormRow 和 CupertinoTextFormFieldRow 等 widgets 则利用 iOS 的视觉美学简化了验证表单字段的生成。

除了为 iOS 新增性能以外,咱们也在继续寻求 iOS 和 Flutter 在着色器和动画方面的 整体性能优化。iOS 依然是 Flutter 的首要平台,咱们将持续致力于为大家带来重要的新性能和性能晋升。

新增 Widget: Autocomplete 和 ScaffoldMessenger

新版 Flutter 新增了两个 Widget,别离是 AutocompleteCore 和 ScaffoldMessenger。AutocompleteCore 是在您的 Flutter 利用中实现主动补全性能所需的根底性能。

开发者对为 Flutter 减少 Autocomplete 性能的呼声很高,所以咱们在新版本中提供了此性能。您当初即可应用,如果您想理解该性能的设计理念,请参阅 设计文档。

同样,ScaffoldMessenger 可用于解决许多与音讯提醒 Snackbar 相干的问题,例如,它能够轻松创立 Snackbar 音讯以响应 AppBar 操作、创立可在 Scaffold 转换之间长久保留的 Snackbar 音讯,并可能在异步操作实现时显示 Snackbar 音讯,即便用户已导航至应用不同 Scaffold 的页面时也不例外。

您只需写一行代码,即可将所有这些更加便捷的新性能支出囊中。从当初开始,您能够应用此行代码来显示您的 Snackbar 音讯:

final messenger = ScaffoldMessenger.of(context);
messenger.showSnackBar(SnackBar(content: Text(‘I can fly.’)));

如您所想,其中原理不止于此,您能够观看 Kate Lovett 公布的 对于 ScaffoldMessenger 的精彩视频 理解详情。

通过 “ 增加到利用 ” 性能创立多个 Flutter

在和许多 Flutter 开发者聊天的过程中,咱们得悉大多数人并非是从零开发一个全新利用,而是会通过将 Flutter 增加到现有的 iOS 和 Android 利用中来进行应用。咱们将此性能称为 混合编程 (Add-to-App),您能够通过这种办法,在保留现有原生代码库的同时,在两个挪动平台间重复使用 Flutter 代码。然而,咱们有时听到采纳此办法的开发者们示意,他们不知如何解脱只能将第一个画面集成到 Flutter 的限度。Flutter 和原生页面交错导致导航状态难以保护,而且在视图级别集成多个 Flutter 会占用大量内存。

过来,额定 Flutter 实例的内存占用量与第一个 Flutter 实例雷同。在 Flutter 2 中,咱们将创立额定 Flutter 引擎的动态内存占用量升高了约 99%,使每个实例的占用量大概为 180kB。

提供该反对的新增 API 目前尚处于预览状态,在 咱们的文档里,您能够找到通过应用这种新模式的阐明和 示例我的项目。随着这一变动的呈现,咱们强烈建议您在原生利用中创立多个 Flutter 引擎实例。

Flutter Fix

当任何成熟的框架汇集了领有宏大代码库的用户时,咱们往往须要防止对框架 API 进行任何更改,以防止毁坏日益增多的代码。随着超过 50 万的 Flutter 开发者散布在越来越多的平台,Flutter 2 很快就会踏入这一行列。然而,随着工夫的推移,为了继续改良 Flutter,咱们心愿可能对 API 进行重大更改。当初的问题是,如何在不影响开发者的前提下持续改良 Flutter API。

咱们为此推出了 Flutter Fix。

Flutter Fix 是一系列性能的组合。首先,咱们为 dart 命令行工具新增了一个名为 “dart fix” 的命令行选项,您可借此寻找弃用 API 列表的所在位置,并理解如何更新调用这些 API 的代码。其次,Flutter Fix 自身就是个列表,自版本 2 开始便与 Flutter SDK 绑定。另外,Flutter Fix 也是一组针对 Visual Studio Code、IntelliJ 和 Android Studio IDE 的新 Flutter 扩大程序,您可借此找到已弃用 API 的雷同列表,单击鼠标,轻点旁边的小灯泡图标即可更改代码,实现疾速修复。

举个例子,比方您的利用具备上面一行代码:

应用已弃用的函数创立 Flutter widget

因为这个函数曾经弃用,请应用上面的参数代替:

替换已弃用的函数并创立 Flutter widget

即便您相熟和理解很多 Flutter 中已弃用的内容,代码中须要批改的内容越多,就越难修复所有的内容,也就越容易呈现谬误。人类并不善于这种重复性的工作,但计算机不一样。通过上面的命令,您能够看到咱们如何在您的整个我的项目中进行问题修复:

$ dart fix --dry-run

如想批量利用它们,您亦能够通过以下代码轻松实现:

$ dart fix --apply

或者,如果您心愿以交互方式在您喜爱的 IDE 中利用这些修复,也能够实现。

多年来,咱们始终在标记已弃用的旧 API,当初咱们制订了一个策略,明确 何时真正移除弃用的 API,而咱们率先将其利用到了 Flutter 2 之中。只管咱们尚未捕捉到所有弃用 API,并将其以数据模式提供给 Flutter Fix,但咱们会一直从之前弃用的 API 中获取更多内容,并在将来继续退出新的重大更改。咱们的指标是尽全力将 Flutter API 打造的尽如人意,同时放弃代码的及时更新。

Flutter DevTools

为了明确 DevTools 是用于调试 Flutter 利用的工具,当初咱们已将其命名为 Flutter DevTools。此外,咱们还做了很多工作,让其能够成为与 Flutter 2 成熟度与品质相匹配的版本。

其中有一个新性能,可在您尚未启动 Flutter DevTools 2 时帮您锁定问题,那就是您的 IDE 可能发现常见的异样,并在 DevTools 中提出这个异样,以助您发展调试。例如,上面显示您的利用中抛出了一个溢出异样,零碎在 Visual Studio Code 中提供了一个在 DevTools 中调试此问题的选项。

Flutter IDE 扩大的溢出异样提醒告诉

按下该按钮,您即可利用 DevTools 中的 Flutter Inspector 查看引发问题的 Widget,以便进行修复。咱们明天的操作只是为了解决溢出异样,但这种解决办法实用于 DevTools 能够解决的各种常见异样。

在 DevTools 开始运行后,您可通过标签上的新谬误标识帮忙本人追踪利用中呈现的具体问题。

DevTools 中的红点能够帮忙揭示利用中存在的谬误局部

DevTools 的另一个新性能是可能轻松发现所显示的分辨率低于其理论分辨率的图像,这有助于追踪利用过大和内存占用过多等状况。若要启用此性能,请在 Flutter Inspector 中启用 Invert Oversized Images。

启用 “ 反转超大尺寸图像 (Invert Oversized Images)” 选项,以突出显示异样图像

当初,当图像的理论分辨率显著大于其显示大小时,零碎就会将其倒置,以便您在利用中轻松找到它。

“ 反转超大图像 ” 的操作示例

此外,为响应大量用户的要求,除了在 Flutter Inspector 的 Layout Explorer 中显示无关弹性布局的详细信息外,咱们还增加了显示固定布局的性能,可便于您调试各种布局。

新的 Layout Explorer 显示了 fixed 和 flex layout 的布局细节

其性能还远不止如此。以下是对 Flutter DevTools 2 其余一些新增性能的总结:

  • 为 Flutter 帧图增加了均匀 FPS 信息和易用性改良
  • 用红色的谬误标签在网络分析器中调用失败的网络申请
  • 新的内存视图图表更快、更小、更简略易用,其中蕴含用于在特定工夫形容流动的悬浮卡片
  • 在 “Logging (日志库)” 选项卡中新增了搜寻和筛选性能
  • 从 DevTools 启动之前开始跟踪日志,以便在启动后能够看到残缺的日志记录
  • 将 “Performance” 视图重命名为 “CPU Profiler”,以便更分明地示意其性能
  • 为 CPU Profiler 帧图增加了工夫网格
  • 将 “Timeline” 视图重命名为 “Performance”,以便更分明地示意其性能

当然这并不是全副。想理解所有相干更改,建议您查阅下列布告:

  • DevTools 0.9.4
  • DevTools 0.9.5
  • DevTools 0.9.6
  • DevTools 0.9.7
  • DevTools 2.0

Android Studio/IntelliJ Extension

咱们也为 IntelliJ 系列 IDE 的 Flutter 插件增加了一些实用于 Flutter 2 的新性能。首先,咱们在其中新增了一个我的项目向导,该向导与 IntelliJ 中的新向导格调统一。

此外,如果您正在 Linux 上应用 IntelliJ 或 Android Studio,针对 装置自 Snap Store 的 Flutter SDK 进行编程,那么零碎便会将 Flutter snap 门路增加到已知的 SDK 门路列表中。这使得 Flutter snap 用户能够更轻松地在 “Settings (设置)” 中配置 Flutter SDK。感激 Marcus Tomlinson 对此作出的奉献!

通过 Snap 装置 Flutter SDK,能够更轻松的在 Linux 上应用 Android Studio

您能够从最近更新布告中理解更多有用信息:

  • IntelliJ Plugin M51
  • IntelliJ Plugin M52
  • IntelliJ Plugin M53
  • IntelliJ Plugin M54

Visual Studio Code 扩大

实用于 Visual Studio Code 的 Flutter 扩大也针对 Flutter 2 进行了优化,咱们首先引入了一些测试加强性能,例如从新运行失败测试的能力。

通过两年的逐渐倒退,对 Dart 的 LSP (语言服务器协定) 反对曾经成为在 Flutter 扩大中将 Dart 分析器集成到 Visual Studio Code 中的默认形式。LSP 反对为 Flutter 开发带来了许多改良,包含在以后的 Dart 文件中利用特定的所有修复,以及可能补全代码以生成残缺函数调用 (包含括号和所需参数) 的能力。

LSP 反对不仅限于 Dart,它还反对 pubspec.yaml 及 analysis_options.yaml 文件中的代码补全。

这仅仅是近期 Visual Studio Code 实用于 Flutter 的局部扩大更新。您能够浏览下列布告,理解全副更新内容:

  • Visual Studio Code 插件 v3.16
  • Visual Studio Code 插件 v3.17
  • Visual Studio Code 插件 v3.18
  • Visual Studio Code 插件 v3.19
  • Visual Studio Code 插件 v3.20

DartPad 降级到反对 Flutter 2

如果不提 DartPad,那咱们的工具更新就不能算残缺,DartPad 现已更新并反对 Flutter 2。

DartPad 曾经降级到反对 Flutter 2 了

当初,无需来到喜爱的浏览器,您就能够体验新的 Flutter 空平安版本。

生态系统更新

Flutter 开发体验不仅包含框架和工具;还包含为 Flutter 利用提供的各种软件包和插件。自上一次 Flutter 稳固版本公布以来,这方面也产生了很多变动。例如,咱们已在摄像头和视频播放器插件之间合并了将近 30 个 PR,从而大大提高了两者的品质。如果您在过来应用这两种产品时曾遇到过问题,那么您应该再尝试一次,您会发现它们比以前更加弱小。

另外,如果您是 Firebase 用户,我非常高兴地发表热门插件的产品质量曾经失去了进步并可投入生产,同时咱们还为这些插件提供了空平安反对以及针对 Android、iOS、web 和 macOS 的 全套参考文档和罕用教程。这些插件包含:

  • Core
  • Authentication
  • Cloud Firestore
  • Cloud Functions
  • Cloud Messaging
  • Cloud Storage
  • Crashlytics

如果您正在寻找利用的解体报告,您能够思考应用 Sentry,其曾经公布了 实用于 Flutter 利用的新 SDK。

Sentry 解体报告工具曾经反对 Flutter

在 Flutter 利用中应用 Sentry 的 SDK,您能够在 Android、iOS 或原生平台上产生谬误时收到实时告诉。查阅 Sentry 文档 理解更多详细信息。

另外,如果您尚未理解过 Flutter 社区中的 “Plus” 插件,您也可着手尝试。Flutter 团队最后开发的许多热门插件均由此衍生而来,咱们已在 Plus 插件中增加了空平安反对和对其它平台的反对,并已着手开始解决 flutter/plugins 库中的相应问题。这些插件包含:

  • Android Alarm+
  • Android Intent+
  • Battery+
  • Connectivity+
  • Device Info+
  • Network Info+
  • Package Info+
  • Sensors+
  • Share+

目前,与 Flutter 兼容的 package 和插件数量超过 15,000 个,这会让人很难找到那些值得优先思考的软件包和插件。因而,咱们公布了 Pub 分值 (动态剖析评分)、人气排名、青睐度,若软件包品质出众,咱们会为其打上 “Flutter Favorite” 的非凡标记。为与 Flutter 2 适配,咱们已在 Favorite 列表中增加了几个新软件包:

  • animated_text_kit
  • bottom_navy_bar
  • chopper
  • font_awesome_flutter
  • flutter_local_notifications
  • just_audio

恭喜这些软件包的作者!如果您尚未理解这些软件包或 列表中的其它软件包,建议您着手开始理解。

最初同样也是很重要的一点,如果软件包作者或用户有趣味理解最新版本的软件包是否实用于最新版本的 Flutter,能够查看 Codemagic 的新 pub.green 网站以理解详情。

Codemagic 公布了一个网站 pub.green 用来展现 package 和近期 Flutter 版本的兼容性后果

您可在 pub.green 网站上测试 pub.dev 上可用的 Flutter 和 Dart 软件与不同 Flutter 版本的兼容性。理解更多信息,举荐查阅 CodeMagic 团队的布告博文。

重大变更

咱们为 Flutter 2 做了如下重大变更,您可利用 “dart fix” 命令主动缓解其中的许多内容:

  • 61366 持续对 clipBehavior 进行重大变更
  • 66700 将默认 FittedBox 的 clipBehavior 更改为无
  • 68905 从 Cupertino 色彩 API 中移除 nullOk 参数
  • 69808 从 Scaffold.of 和 ScaffoldMessenger.of 中移除 nullOk 参数,为两者创立 maybeOf
  • 68910 从 Router.of 中移除 nullOk 参数,使其返回非空值
  • 68911 在 Localizations 中退出 maybeLocaleOf 办法
  • 68736 从 Media.queryOf 中移除 nullOK 参数
  • 68917 从 Focus.of, FocusTraversalOrder.of 和 FocusTraversalGroup.of 中移除 nullOK
  • 68921 从 Shortcuts.of, Actions.find, and Actions.handler 中移除 nullOK
  • 68925 从 AnimatedList.of 和 SliverAnimatedList.of 中移除 nullOK
  • 69620 从 BuildContext 中删除已弃用的办法
  • 72017 删除已弃用的 CupertinoTextThemeData.brightness
  • [72395 删除已弃用的 [PointerEnterEvent, PointerExitEvent].fromHoverEvent](https://github.com/flutter/fl…
  • 72532 删除已弃用的 showDialog.child
  • 72890 删除已弃用的 Scaffold.resizeToAvoidBottomPadding
  • [72893 删除已弃用的 WidgetsBinding.[deferFirstFrameReport, allowFirstFrameReport]](https://github.com/flutter/fl…
  • 72901 删除已弃用的 StatefulElement.inheritFromElement
  • 72903 删除已弃用的元素办法
  • 73604 删除已弃用的 CupertinoDialog
  • [73745 从 Cupertino[Sliver]NavigationBar 中删除已弃用的 actionsForegroundColor](https://github.com/flutter/fl…
  • 73746 删除已弃用的 ButtonTheme.bar
  • 73747 删除 Span 弃用项
  • 73748 删除已弃用的 RenderView.scheduleInitialFrame
  • 73749 删除已弃用的 Layer.findAll
  • 75657 在 Localizations.localeOf 移除残留的 nullOK 参数
  • 74680 从 Actions.invoke 移除 nullOK 参数,并增加 Actions.maybeInvoke 办法

总结

最初,我想代表 Google Flutter 团队全体成员向开发者们说一句谢谢!感激你们在过来的两年里推出了超过 15 万款 Flutter 利用,咱们整顿了一些团队喜爱的 Flutter 利用,在 Flutter Engage 主题演讲 上播放了这段视频,献给各位开发者和社区。

如果没有各位开发者们对本人构建的 Flutter 利用的继续反对和热诚,这个具备寰球生机的开发者社区就不可能成为事实,咱们十分期待看到您接下来的作品!

正文完
 0