Flutter 2.0 & Dart 2.12 更新信息

Flutter 2.0

  1. 提供了全平台构建应用支持(iOS, Android, Windows, macOS, Linux, Web, 以及嵌入式), Flutter 从移动框架转换到了便携式设备框架。


    image.png
  2. 超过了 15w 个app 上架到 play store,google 自身也有大量产品在用 flutter。尤其是 google pay 重写了整个应用程序。


    image.png
  3. 此次发布完整的跨平台程序: Flutter Folio 涵盖多个平台。 源码, 相关session

  4. 对各式各样大小的机型甚至折叠屏做了功能适配。

  5. Flutter Web 稳定版本发布, 性能大幅度提升。另外还增加了基于 CanvasKit 的渲染器,以及一些 Widget 如: Link widget。来确保浏览器上的 app 体验更像是一个 web app。demo irobot dartpad 相关 session

    • 渐进式 Web 应用(在使用 Web 的时候感觉像是在使用 APP。): Progressive web apps(PWAs)
    • 单页面应用: Single page apps(SPAs)
    • H5: Existing Flutter mobile apps
  6. MacOS、Windows、Linux 提交发布版本发布(实际上就是beta,或是说预览版)最后的稳定版本将在今年发布。增加了一些桌面端独特的特性,可单独为这些桌面平台发布可执行程序。 Ubuntu 的下一代桌面安装程序也会用 Flutter 来编写。

  7. 可用于嵌入式,如汽车车载系统。

  8. Dart 这次加入了 Null-Safety 特性,可以帮助你消除空引用的错误 null。

    • 具有可移植性,可生成高性能的 Intel和 ARM 机器代码,在 Web 中生成高度优化的 JS 代码。
    • 提升生产效率,可进行热重载,并具有 Web 异步并发的模式。
    • 具有代码强健性。此次加入了 Null-Safety 运行时类型特性。 Sound Null Safety 健全的空安全,可以让类型系统检查变得更加健壮,能保证任何非空表达式均不能求值为 null,即可以防止因为 null 所引发的 crash。
    • 增加 Dart FFI 可以调用 C 的 API
    • 参考资料
    • 迁移资料
    • 迁移视频
  9. Flutter 团队为 Flutter2 提供了一些工具

    • Flutter Fix: 可以快速迁移代码中 Flutter 已经弃用的 API。(通过小灯泡功能进行迁移或者命令行 dart fix 大批量的修复)
    • dart migrate: 帮助开发者将未启用空安全状态迁移至开启空安全状态。(具体迁移可参考视频:https://www.bilibili.com/video/BV1sy4y1a7SA)
    • Flutter DevTools 更新: 一些异常抛出例如 overflow problem 可直接从 Flutter DevTools 中定位。还增加了一些工具,如 Invert Oversized Images、APP Size、Layout Explorer(可以看更多的布局结构)、FPS、可追踪历史 Log 日志等。
    • DartPad 已经支持 Flutter 2,也就是可以使用 null-safety
  10. Flutter 增加广告插件,让开发者可以通过广告获取收益Google Mobile Ads SDK for Flutter 相关 session

    image.png

  1. 增加新 iOS 功能以及组件 例如:IPA 可以直接通过命令行导出,方便 CI.CupertinoSearchTextField、 CupertinoFormSection, CupertinoFormRow 和 CupertinoTextFormFieldRow 等等。


    image.png
  2. 增加 Autocomplete and ScaffoldMessenger widget

  3. Add-to-App 功能有很多方面的提升,如:如何集成第一个页面到原生中,如何维护与原生与 flutter 导航栈的问题以及多个 Flutter 实例内存开销的问题。相关文档

  4. Flutter 生态的更新,

    1. 例如 firebase 插件全面更新支持 null-safety
    2. 例如一些 Flutter 社区的插件也支持 null-safety
  5. 三方提供可检测 Flutter 版本与插件兼容性的网站: pub.green

Dart 2.12

这次语言更新主要是两个特性

  1. sound null safety: 帮助你避免由 null 产生的异常错误。 video
  2. Dart FFI: 可以调用C语言的代码, 例如可以调用 Windows Win32 APIs.


    image.png

Dart 语言独一无二的特性主要体现以下三个方面

image.png

迁徙方案

API 迁徙: dart fix 或 IDE
null-safety 迁徙: 迁移资料 迁移视频

相关文章视频

Flutter 2 官宣文章
Dart 2.12 官宣文章
Flutter’s web support blog post.
活动
活动视频

你可能感兴趣的:(Flutter 2.0 & Dart 2.12 更新信息)