针对 Web,Mobile 和 Desktop 的下一代 Flutter 。

今天 Flutter 2 正式版发布了,作为 Flutter 的重大升级,使用 Flutter 2 开发者可以用相同的代码,把使用 Flutter 开发的应用发布到五个操作系统:iOSAndroidWindowsmacOSLinux; 以及运行到 ChromeFirefoSafariEdge等浏览器的 Web 版本上,Flutter 甚至还可以嵌入到 Cars, TVs 和智能家电中。

Flutter 的目标是从根本上改变开发人员对构建应用程序的思路,让开发者从需要完成的用户需求开始实现,而不是从开发者需要适配的平台开始

Flutter 可以让你在拥有更好设计效果的情况下,得到更好的用户体验,因为它的运行速度很快,它会将源代码编译为机器代码,但是 Flutter 在开发过程中支持的 hotload,所以也可以在应用程序调试运行时进行更改并立即查看结果。

最后,Flutter 是开放的,已经有成千上万的开发者成为了它的贡献者,并通过各种 packages 对其进行了扩展。

在今天发布的 Flutter 2 中,Flutter 正式将从移动框架扩展到了全平台框架,使用 Flutter 2 开发者可以让它的应用直接运用到各种不同的平台而几乎不需要做出什么改变。

现在仅 Play 商店就已经有超过 15万个Flutter 应用程序,并且每个应用程序都可以通过 Flutter 2 进行免升级,因为它们现在可以在不重写的情况下扩展到 DesktopWeb

PS: 个人认为这个的是可行性太低了,纯属吹水。

全球各大主流企业都已经使用了 Flutter,包括它们的主流的应用程序如:微信GrabYandex GoNubankSonosFasticBettermentrealtor.com等。

在 Google 内部也会使用 Flutter 开发,Google 内有近一千多名工程师正在使用 Dart 和Flutter 构建应用程序,其中许多产品都已经发布了,包括:StadiaGoogle OneGoogle Nest Hub 等等。

在几个月前, Google Pay 里的旗舰移动应用就有不少更改为使用 Flutter,它们已经在生产力和质量上取得了重大进步。通过统一的代码库,团队消除了平台之间的功能差异,并清理超过一百万行代码,Google Pay 的报告还提到其工程师的效率要高得多,技术债务大大减少,统一的发布流程(如跨 iOS 和 Android 的安全性审查和试验)得以实现。

Flutter on the web

Flutter 2 中最大的修改之一就是对Web的生产质量有了新的支持。

Flutter 的Web 支持基于有硬件加速的2D和3D图形以及灵活的布局和绘画API,提供了以应用程序为中心的框架,该框架充分利用了现代Web所提供的所有优势。

此初始版本特别关注三种应用程序场景:

  • 渐进式Web应用程序(PWA):将Web的访问范围与桌面应用程序的功能结合在一起。
  • 单页应用程序(SPA),一次加载并与网络之间进行数据传输。
  • 将现有的 Flutter 移动应用程序带到Web上,从而为两种体验启用共享代码。

在过去的几个月中,在为稳定发布 Web 支持做准备的同时,也在性能优化方面取得了许多进展,比如添加了一个由 WebAssembly 构建的 CanvasKit 驱动渲染引擎。

Flutter Plasma 是由社区成员 Felix Blaschke 构建的 Demo ,展示了使用 Dart 和 Flutter 构建复杂的 Web 图形体验的简便性,这些体验也可以在桌面或移动设备上本地运行。

此外我们也一直在扩展 Flutter 以提供最佳的Web平台。最近几个月,Flutter 添加了文本自动填充功能,对地址栏 URL 和路由的控制 和 PWA manifests,而且由于 desktop browsers 与移动浏览器一样重要,因此我们还添加了交互式滚动条和键盘快捷键,以此来增加了 desktop 下的默认内容的紧密程度,并增加了屏幕阅读对 Windows,macOS 和Chrome OS 上可访问支持。

desktops, foldables, and embedded devices

除了传统的移动设备和 Web 之外,Flutter 被越来越多地扩展到其他设备类型,今天的主题演重点介绍了三个伙伴关系,这些伙伴关系证明了 Flutter 的可移植能力。

首先 Canonical 与我们合作将 Flutter 带入 desktop ,开发者贡献了许多代码来支持Linux 上的开发和部署。

在今天的活动中,,Ubuntu 团队展示了由 Flutter 重写的早期新安装程序的演示,这对于Canonical 来说,它们可以在各种硬件配置上提供稳定而又优美的体验,而展望未来,Flutter是 Canonical 创建的未来 desktop 和移动应用程序的默认选择。

其次微软正在继续扩大对 Flutter 的支持,除了对 Flutter 提供高质量的 Windows 支持外,今天微软还将发布对 Flutter 引擎以支持新兴的可折叠 Android 设备的支持。这些设备引入了新的设计模式,其应用程序可以扩展内容或利用双屏特性提供并行体验。在 Surface 工程团队的博客文章中展示了他们的成功。

最后是汽车制造商丰田汽车宣布了其计划:通过 Flutter 构建其信息娱乐系统,将最佳的数字体验带入车辆。

使用 Flutter 标志着与过去开发车载软件的方式大相径庭,丰田之所以选择 Flutter 是因为其高性能和经验的一致性,快速的迭代和开发人员的人机工程学以及智能手机层的触摸机制,通过使用 Flutter 的 embedder API,Toyota 可以针对车载系统的独特需求量身定制Flutter。

我们很高兴继续与丰田和其他公司合作,将 Flutter 应用于汽车,电视和其他嵌入式设备,我们希望在未来几个月中分享更多示例。

不断发展的Flutter生态系统

现在,有超过 15,000 个 Flutter 和 Dart 软件包:来自 AmazonMicrosoftAdobeAlibabaeBaySquare 等公司;关键包支持如:LottieSentrySVG,以及 Flutter Favorite 软件包如: sign_in_with_applegoogle_fontsgeolocatorsqflite 等。

今天,我们宣布推出 Google 移动广告 Flutter 的测试版,这是一个可与 AdMob 和AdManager 配合使用的新 SDK,可提供多种广告格式,包括横幅广告,插页式广告,原生广告和奖励视频广告。

我们一直在与几个主要客户一起试用该 SDK,例如 SuaMúsica(拉丁美洲最大的独立艺术家音乐平台),现在我们准备开放 Google 移动广告 Flutter SDK 以便它能够被更广泛地采用。

这里还将宣布对Flutter插件的一些核心 Firebase 服务进行更新:AuthenticationCloud FirestoreCloud FunctionsCloud MessagingCloud StorageCrashlytics,包括对可靠的 null 安全性的支持以及对 Cloud Messaging 软件包的全面检查。

Dart: The secret sauce behind Flutter

正如前面描述的,Flutter 2 可移植到许多不同的平台和设备上,并且轻松过渡到支持 Web,桌面和嵌入式平台,这个过程很大程度上要归功于 Dart,它是针对多平台开发进行了优化的Google 编程语言。

Dart 结合了一套独特的功能来构建应用程序:

  • 毫无争议的可移植性,其编译器成为 Mobile 和 Desktop 上高性能的Intel和ARM机器代码,并为 Web 提供经过严格优化的 JavaScript 输出,相同的 Flutter 框架源代码可编译到所有这些目标。

  • 在桌面和移动设备上进行有状态热重载的迭代开发,其优秀的异步,并发模式设计的语言构造。

  • 在所有这些平台上拥有 Google 级性能,可靠的 null 安全性保证了运行时和开发过程中的null约束。

没有其他语言可以结合所有这些功能。也许这就是为什么 Dart 是GitHub上发展最快的语言之一的原因。

PS:我觉得这纯属吹水引战。

Dart 2.12 现已上市,是我们自 2.0 版以来最大的发布版本,支持 null safety。可靠的null 安全性可以消除可怕的 null 引用异常,从而在开发和运行时提供了保证。最重要的是,此功能不是一项重大更改:开发者可以按照自己的步调将其逐步添加到代码中,并可以使用迁移工具在准备就绪时再使用。

今天的更新还包括 FFI 的稳定实现,开发者可以编写基于 C 的 API 高性能代码和 Flutter 交互,用 Flutter 编写新的集成开发人员分析器工具,以及许多性能和大小上的改进,这些改进可以进一步升级代码,而无需重新编译。有关更多信息,请查看专用的Dart 2.12公告博客文章。

Flutter 2: Available now

关于 Flutter 2,要说的话远远超出了在本文中可以涵盖的范围。

实际上,合并的 PR 原始列表是一个200页的文档!请访问 Flutter 2 相关的独立技术博客,以获取有关许多新功能和性能改进的信息。

我们还有一个主要的 Demo,它展示了刚才前面提到的所有内容,该样本是与位于加拿大埃德蒙顿的屡获殊荣的设计团队 gskinner 合作构建的。Flutter Folio 是一款剪贴簿应用程序,专为所有设备而设计。

小屏幕体验是专为捕获内容而设计的;大屏幕支持使用台式机和平板电脑专用的习惯用法进行编辑; Web 体验是为共享而量身定制的。所有这些量身定制的经验都共享相同的代码库,该代码库是开源的。

如果你还没有尝试过 Flutter,建议你赶紧试试,它会对你的应用程序开发体验来会是一次重大升级。在 Flutter 中提供了一个开放源代码工具包,用于通过单个代码库构建针对移动,台式机,Web和嵌入式设备的美观而快速的应用程序,这些应用程序既可以满足 Google 的苛刻需求,也可以满足我们客户的需求。

Flutter 是免费的开放源代码,我们很高兴看到开发者使用 Flutter 2 构建的优秀的应用!

【译】Flutter 2.0 正式版发布,全平台 Stable相关推荐

  1. 服务器安全股v4.0正式版发布 防火墙效能更强

    2019独角兽企业重金招聘Python工程师标准>>> 6月24日,服务器安全狗v4.0正式版发布. 超强驱动,全线优化 服务器安全狗全方位兼容驱动V2.0震撼上线,由内而外全面提高 ...

  2. java 7 发布,【UC浏览器】Java平台7.0正式版发布啦

    [UC浏览器]Java平台7.0正式版发布啦 UC浏览器是UC 优视科技开发的一款手机浏览器,支持WEB.WAP页面浏览,速度快而稳定,页面排版美观:具有网站导航.搜索.下载.个人数据管理等功能,您能 ...

  3. 启航,超越-动网论坛.NET 1.0正式版发布

    启航,超越-动网论坛.NET 1.0正式版发布 动网犹如一艘航船,在社区论坛这一无际的大海里,不停的向更深更广的领域使去.早在今年三月,我们宣布向.NET领域全方面进军,也同时宣布我们已经正式启航,这 ...

  4. 极客日报第6期:天猫京东双十一总交易额7697亿元,你贡献了多少?.NET 5.0 正式版发布!

    文章目录 互联网快讯 程序员专区 Github每日精选 CSDN社区优质博文精选 互联网快讯 1.天猫京东双十一总交易额7697亿元,你贡献了多少? 零点,2020天猫双11全球狂欢季的最终交易额定格 ...

  5. StartOS 5.0 正式版发布

    StartOS 5.0正式版发布了. StartOS -- 是由东莞瓦力网络科技有限公司发行的开源操作系统,符合国人的使用习惯,预装常用的精品软件,操作系统具有运行速度快,安全稳定,界面美观,操作简洁 ...

  6. Xcode 7.0正式版发布了

    Xcode 7.0正式版发布了 下载地址:链接: http://pan.baidu.com/s/1FNkPS 密码: ee42 本文由大学霸整理,转载请注明出处,尊重IT人!

  7. Wonder 1.0 正式版发布,WebGL 3D引擎和编辑器

    介绍 Wonder 1.0正式版发布了.免费.开源,不用注册,直接打开在线编辑器即可使用. Wonder 是 web 端 3D 开发的解决方案,包括引擎.编辑器,致力于打造开放.分享.互助的生态.Wo ...

  8. vue 3.0 正式版_Vuejs 3 Release:One Piece. Vuejs 3.0 正式版发布!代号:海贼王

    Vuejs 3.0 在北京时间2020年9月19日凌晨,终于发布了 3.0 版本,代号:One Piece.此次vue3.0 为用户提供了全新的 composition-api 以及更小的包大小,和更 ...

  9. Redis 5.0 正式版发布了,19 个新特性

    转载自  Redis 5.0 正式版发布了,19 个新特性 Redis 5.0 GA 正式版发布了! 下载地址: download.redis.io/releases/redis-5.0.0.tar. ...

最新文章

  1. php函数设置默认值,php函数如何设置默认值作为对象?
  2. 【C 语言】const 关键字用法 ( 常量指针 - const 在 * 左边 - 修饰数据类型 - 内存不变 | 指针常量 - const 在 * 右边 - 修饰变量 - 指针不变 )
  3. 1.5 对象类型转换:向上转型和向下转型
  4. 数据结构与算法-二叉树(java描述)
  5. 明确需求与功能,优化小打卡的分享刺激点
  6. 【特征】机器学习之特征优选
  7. 父亲节python代码_python 计算 父亲节
  8. react取消捕获_react 异常捕获
  9. CF1354F. Summoning Minions
  10. 1011. A+B和C (15)-PAT乙级真题
  11. sql 拆解函数_在SQL Server数据库中拆分字符串函数
  12. 扫雷win10_室友玩扫雷通关,在我面前装逼?不存在!用Python开发自动扫雷,五秒通关!...
  13. 计算机学院考勤管理办法,计算机学院软件学院考勤制度(试行).doc
  14. C语言课设分享:bgm
  15. php如何除去图片水印,Phpcms v9如何去掉自带水印的解决方法
  16. python爬虫脚本 初级入门爬虫英雄联盟所有皮肤_Python爬虫实战,60行代码爬取英雄联盟全英雄全皮肤,找寻曾今那些被删除的绝版皮肤...
  17. PHP获取中国所有的大学,全国300所大学的BBS论坛.doc
  18. 零基础入门运维必备 | 一文总结学习 Python 的 14 张思维导图
  19. [渝粤教育] 无锡商业职业技术学院 导游业务 参考 资料
  20. Java实现 LeetCode 417 太平洋大西洋水流问题

热门文章

  1. springboot项目结构
  2. html sku效果后台,vue sku商品规格模板之后台管理系统篇
  3. Java8 Stream-深入理解筛选、归约、分组、聚合
  4. html div里面调用地图,DIV+CSS实现地图效果
  5. 【SIXUN】思迅软件软锁更换硬锁
  6. 中国大学MOOC测验爬取(上)
  7. 一、DeepSort C++版本代码详解-deepsort.cpp
  8. 学校计算机操作技能(文字录入),试谈计算机文字录入技能训练.doc
  9. 微生物组-宏基因组分析专题研讨会(2022.4,线下)
  10. nvme metadata end to end 简介和测试