老孟导读 :昨天期待已久的 Flutter 2.0 终于公布了,Web 端终于提正了,秋季期间我公布的一篇文章,其中的一个预测就是 Web 正式公布,曾经实现了,还有一个预测是:2021 年将是 Flutter 大跃进的一年,等往年你年底总结的时候,让咱们在来验证下这个 预测是否应验。
前面几天会陆续公布 Flutter 2.0 更新更加具体的内容更新,敬请关注。
上面就让咱们看看 Flutter 2.0 都有哪些重磅更新,原文链接:https://developers.googleblog…
咱们针对 Web,挪动端和台式机构建的下一代 Flutter
明天,咱们发表 Flutter 2:Flutter 的重大降级,使开发人员可能为任何平台创立好看,疾速且可移植的应用程序。借助 Flutter 2,您能够应用雷同的代码库将本机应用程序公布到五个操作系统:iOS,Android,Windows,macOS 和 Linux。以及针对 Chrome,Firefox,Safari 或 Edge 等浏览器的 Web 体验。Flutter 甚至能够嵌入到汽车,电视和智能家电中,为环境计算世界提供最广泛和最便携式的体验。
咱们的指标是从根本上扭转开发人员对构建应用程序的认识,而不是从您要定位的平台开始,而要从您要创立的体验开始。Flutter 使您能够在品牌和设计走在前列的状况下,手工发明 美妙的 体验。Flutter速度很快 ,能够将源代码编译为机器代码,然而因为咱们对有状态的热重装的反对,您依然能够进步 生产力 ,容许您在利用程序运行时进行更改并立刻查看后果。Flutter 是 凋谢的,成千上万的贡献者增加了外围框架,并通过软件包生态系统对其进行了扩大。
在明天公布的 Flutter 2 中,咱们将 Flutter 从挪动框架扩大到了 可移植 框架,开释了您的应用程序,使其能够在各种不同的平台上运行,而简直没有扭转。仅 Play 商店就曾经有 超过 15 万个 Flutter 应用程序,并且每个应用程序都能够通过 Flutter 2 收费降级,因为它们当初能够在不重写的状况下扩大到指标台式机和 Web。
来自世界各地的客户正在应用扑,包含风行的应用程序,如微信,Grab, Yandex Go, Nubank, Sonos, Fastic, Betterment and realtor.com。在 Google,咱们依赖 Flutter,Google 的一千多名工程师正在应用 Dart 和 Flutter 构建应用程序。实际上,其中许多产品曾经发货,包含 Stadia,Google One 和 Google Nest Hub。
几个月前,Google Pay 为其旗舰挪动应用程序改用 Flutter,他们曾经在生产力和品质上获得了重大提高。通过对立代码库,该团队打消了平台之间的性能差别,并打消了超过一百万行代码。Google Pay 还报告说,其工程师的效率要高得多,技术债权大大减少,对立公布流程(如跨 iOS 和 Android 的安全性审查和试验)得以实现。
Flutter on the web
Flutter 2 中最大的布告兴许是 对 Web 的生产品质反对。
Web 的晚期根底是以 document 为核心的。然而,Web 平台已倒退为蕴含更丰盛的平台 API,这些 API 反对具备硬件加速的 2D 和 3D 图形以及灵便的布局和绘画 API 的高度简单的应用程序。Flutter 的 Web 反对基于这些翻新,提供了以 应用程序为核心的框架 ,该 框架 充分利用了古代 Web 所提供的所有劣势。
此初始版本特地关注三种应用程序场景:
- 渐进式 Web 应用程序(PWA),将 Web 的拜访范畴与桌面应用程序的性能联合在一起。
- 单页应用程序(SPA),一次加载并与 Internet 服务之间进行数据传输。
- 将现有的 Flutter 挪动应用程序带到 Web 上,从而为两种体验启用共享代码。
在过来的几个月中,在为稳固公布 Web 反对做筹备的同时,咱们在性能优化方面获得了许多停顿,增加了一个新的由 WebAssembly 构建的由 CanvasKit 驱动的渲染引擎。Flutter Plasma 是由社区成员 Felix Blaschke 构建的演示,展现了应用 Dart 和 Flutter 构建简单的 Web 图形体验的简便性,这些体验也能够在桌面或挪动设施上本地运行。
咱们始终在扩大 Flutter,以提供最佳的 Web 平台。最近几个月,咱们增加了文本主动填充性能,对地址栏 URL 和路由的管制以及 PWA 清单。而且因为台式机浏览器与挪动浏览器一样重要,因而咱们增加了交互式滚动条和键盘快捷键,减少了台式机模式下的默认内容密度,并减少了屏幕阅读器对 Windows,macOS 和 Chrome OS 上可拜访性的反对。
曾经提供了应用 Flutter 构建的 Web 应用程序的一些示例。在教育工作者中,iRobot 以其风行的 Root 教育机器人而闻名。Flutter 对网络的生产反对使 iRobot 能够利用其现有的教育编程环境并将其移至网络,从而将其可用性扩大到 Chromebook 和其余浏览器是最佳抉择的设施。iRobot 的博客文章具体介绍了迄今为止的停顿以及为何抉择 Flutter。
另一个例子是 Rive,Rive 为设计师提供了一个弱小的工具,可用于创立可公布到任何平台的自定义动画。他们的更新后的 Web 应用程序现已在 Beta 中提供,齐全由 Flutter 构建,并且是 Flutter 在此环境中能够提供的所有服务的一封情书。
您能够在咱们的 Medium 出版物上的专用博客文章中找到无关 Flutter 的更多信息。
台式机,可折叠设施和嵌入式设施上的 Flutter 2
除了传统的挪动设施和 Web 之外,Flutter 越来越多地扩大到其余设施类型,咱们在明天的主题演讲中重点介绍了三个伙伴关系,这些伙伴关系证实了 Flutter 的便携性。
首先,Canonical与咱们单干将 Flutter 带入桌面,工程师们奉献了代码来反对 Linux 上的开发和部署。在明天的流动中,Ubuntu 团队展现了由 Flutter 重写的新安装程序的晚期演示。对于 Canonical 来说,至关重要的是,它们能够在各种硬件配置上提供坚如磐石而又柔美的体验。展望未来,Flutter 是 Canonical 创立的将来台式机和挪动应用程序 的默认抉择。
其次,微软 正在持续扩充对 Flutter 的反对。除了正在进行的单干以在 Flutter 中提供高质量的 Windows 反对外,明天微软还将公布对 Flutter 引擎的反对,以反对新兴的可折叠 Android 设施。这些设施引入了新的设计模式,其应用程序能够扩大内容或利用双屏个性提供并行体验。在 Surface 工程团队的博客文章中,他们展现了他们的工作,并邀请其他人退出他们,共同完成实用于 Surface Duo 和其余设施的高质量实现。
最初,世界上最滞销的汽车制造商 丰田 汽车发表了其打算,通过构建由 Flutter 提供能源的信息娱乐零碎,将最佳的数字体验带入车辆。应用 Flutter 标记着与过来开发车载软件的形式天壤之别。丰田之所以抉择 Flutter,是因为其高性能和教训的一致性,疾速的迭代和开发人员的人机工程学以及智能手机层的触摸机制。通过应用 Flutter 的 embedder API,Toyota 能够针对车载零碎的独特需求量身定制 Flutter。
咱们很快乐持续与丰田和其余公司单干,将 Flutter 利用于汽车,电视和其余嵌入式设施,咱们心愿在将来几个月中分享更多示例。
一直倒退的 Flutter 生态系统
当初,有超过 15,000 个 Flutter 和 Dart 软件包:来自 Amazon,Microsoft,Adobe,Alibaba,eBay 和 Square 等公司;到重要的软件包,如 Lottie,Sentry 和 SVG,以及 Flutter Favorite 软件包,如 sign_in_with_apple,google_fonts,geolocator 和 sqflite。
明天,咱们发表推出 Google 挪动广告 Flutter 的测试版,这是一个可与 AdMob 和 AdManager 配合应用的新 SDK,可提供多种广告格局,包含横幅广告,插页式广告,原生广告和处分视频广告。咱们始终在与几个次要客户一起试用该 SDK,例如 SuaMúsica(拉丁美洲最大的独立艺术家音乐平台),当初咱们筹备凋谢 Google 挪动广告 Flutter SDK 以便更宽泛地采纳。
咱们还将发表对 Flutter 插件的一些外围 Firebase 服务进行更新:身份验证,Cloud Firestore,Cloud Functions,Cloud Messaging,Cloud Storage 和 Crashlytics,包含对牢靠的 null 安全性的反对以及对 Cloud Messaging 软件包的全面查看。
Dart:Flutter 背地的机密调味料
正如咱们曾经指出的,Flutter 2 可移植到许多不同的平台和形状上。轻松过渡到反对 Web,桌面和嵌入式的过程很大水平上要归功于 Dart,它是针对多平台开发进行了优化的 Google 编程语言。
Dart 联合了一套独特的性能来构建应用程序:
- 无意外的可移植性,其编译器可为挪动和台式机生成高性能的 Intel 和 ARM 机器代码,并为网络提供通过严格优化的 JavaScript 输入。雷同的 Flutter 框架源代码可编译到所有这些指标。
- 在桌面和挪动设施上 进行有状态热重载的迭代开发,以及为古代 UI 编程的异步,并发模式设计的语言结构。
- 在所有这些平台上的Google 级性能,牢靠的 null 安全性保障了运行时和开发过程中的 null 束缚。
没有其余语言能够联合所有这些性能。兴许这就是为什么 Dart 是 GitHub 上倒退最快的语言之一的起因。
Dart 2.12 现已公布,是咱们自 2.0 版以来最大的发行版,反对null 安全性。牢靠的 null 安全性有可能打消可怕的 null 援用异样,从而在开发和运行时提供了保障,即如果开发人员明确抉择,则类型只能蕴含 null 值。最重要的是,此性能不是一项重大更改:您能够依照本人的步调将其逐渐增加到代码中,并能够应用迁徙工具在准备就绪时为您提供帮忙。
明天的更新还包含 FFI 的稳固实现,使您能够编写可与基于 C 的 API 互操作的高性能代码。用 Flutter 编写的新的集成开发人员和分析器工具;以及许多性能和大小上的改良,这些改良能够进一步降级代码,而无需从新编译即可。无关更多信息,请查看专用的 Dart 2.12 布告博客文章。
Flutter 2:现已公布
对于 Flutter 2,要说的话远远超出了咱们在本文中能够涵盖的范畴。实际上,合并的合并申请的原始列表是一个 200 页的文档!请拜访 Flutter 2 上的独立技术博客,以获取无关许多新性能和性能改良的信息,咱们认为这将使现有的 Flutter 开发人员称心,并立刻下载。
咱们还有一个次要的新样本,它展现了方才提到的所有内容,该样本是与位于加拿大埃德蒙顿的屡获殊荣的设计团队 gskinner 单干构建的。Flutter Folio 是一款剪贴簿应用程序,专为您的所有设施而设计。小屏幕体验是专为捕捉内容而设计的;大屏幕反对应用台式机和平板电脑专用的习惯用法进行编辑;网络体验是为共享而量身定制的。所有这些量身定制的教训都共享雷同的代码库,该代码库是开源的,可供您浏览。
如果您还没有尝试过 Flutter,咱们认为您会发现它对您的利用程序开发体验而言是一次重大降级。在 Flutter 中,咱们提供了一个凋谢源代码工具包,用于通过单个代码库构建针对挪动,台式机,Web 和嵌入式设施的好看而疾速的应用程序,这些应用程序既能够满足 Google 的刻薄需要,也能够满足咱们客户的需要。
Flutter 是收费的凋谢源代码。咱们很快乐看到 您应用 Flutter 2 构建的货色!
交换
老孟 Flutter 博客(330 个控件用法 + 实战入门系列文章):http://laomengit.com
增加微信或者公众号支付《330 个控件大全》和《Flutter 实战》PDF。
欢送退出 Flutter 交换群(微信:laomengit)、关注公众号【老孟 Flutter】: