发布网友 发布时间:2024-10-02 07:03
共1个回答
热心网友 时间:2024-11-20 23:21
原本链接https://medium.com/flutter/introducing-flutter-3-5eb69151622f
Flutter3作为GoogleI/O主题演讲的主要部分,Flutter3完成了Flutter从以移动为中心到多平台框架的路线图,本次提供了macOS和Linux桌面应用相关的支持,以及对Firebase集成的改进、提高生产力和性能以及对AppleSilicon的支持等等。
Flutter3之旅Flutter为了彻底改变应用的开发方式:将Web的迭代开发模型与以前游戏保留的硬件加速图形渲染和像素级控制相结合。
自Flutter1.0beta发布以来的过去四年里,Flutter团队逐渐在这些基础上进行构建,添加了新的framework功能和新的Widget,与底层平台更深入地集成,还有丰富的packages支持以及许多性能和工具改进。
随着产品的成熟,越来越多的人开始使用Flutter构建应用程序。如今有超过500,000个使用Flutter构建的应用程序。
来自data.ai等研究公司的分析以及公开推荐表明,Flutter被许多领域的客户使用:
微信等社交应用
Betterment和Nubank等金融和银行应用;
SHEIN和trip.com等商务应用;
Fastic和Tabcorp等生活方式应用;
MyBMW等配套应用
巴西政府等公共机构;
如今,有超过500,000个使用Flutter构建的应用程序。
开发人员告诉我们,Flutter可以更快地为更多平台构建精美的应用。在我们最近的用户研究中:
91%的开发人员同意Flutter减少了构建和发布应用所需的时间。
85%的开发者同意Flutter让他们的应用比以前更漂亮。
85%的人同意Flutter让他们能够为比以前更方便地在更多的平台发布他们的应用。
在Sonos最近的一篇博客文章中,他讨论了他们关于体验方便的改进,强调了其中的第二点:
“毫不夸张地说,解锁[Flutter]是有一定程度的‘溢价’,这与我们团队之前交付的任何东西都不同。对我们的设计师来说最重要的是,Flutter可以轻松地构建新的UI,这意味着我们的团可以花更少的时间对规范说“不”,而将更多的时间用于迭代规范。这听起来值得,所以我们建议大家可以尝试一下Flutter。”
Flutter3介绍借助Flutter3,开发者可以通过一个代码库为六个平台构建应用,为开发人员提供无与伦比的生产力,并帮助初创公司在一开始就将新想法快速得带入完整的目标市场。
在之前的版本中,我们在iOS和Android的技术上添加了Web和Windows支持,现在Flutter3增加了对macOS和Linux应用程序的稳定支持。
添加对应平台的支持不仅仅是渲染像素:它包括新的输入和交互模型、编译和构建支持、accessibility和国际化以及特定于平台的集成等等,Flutter团队的目标是让开发者能够灵活地利用底层操作系统,同时根据开发者的选择尽可能多的共享UI和逻辑。
在macOS上,现在支持Intel和AppleSilicon,提供UniversalBinary的支持,允许应用打包支持两种架构上的可执行文件。在Linux上,Canonical和Google合作提供了一个最佳的开发选项。
Superlist是Flutter如何实现?Desktop应用的一个很好的例子,它会今天在测试版中发布。
Superlist通过将列表、任务和自由格式内容组合成全新的待办事项列表和个人计划的新应用程序,提供协作能力,而Superlist团队之所以选择Flutter,是因为它能够提供快速、高度品牌化的桌面体验,我们认为他们迄今为止的进步证明了为什么Flutter是一个不错的选择。
Flutter3还改进了许多基础功能,包括了改性能、MaterialYou支持和开发效率的提高。
除了上面提到的工作,在这个版本中,Flutter现在支持完全给予原生Apple芯片进行开发,虽然Flutter自发布以来一直与基于M1的Apple设备兼容,但Flutter现在可以充分利用了Dart对Apple芯片的支持,从而能够在基于M1的设备上更快地编译并支持macOS应用程序的UniversalBinary文件
我们对MaterialDesign3的工作也在此版本中基本完成,它允许开发人员提供动态配色方案和新的视觉组件,以适应性强的跨平台设计系统:
Flutter由Dart提供支持,Dart是一种用于多平台开发的高生产力、可移植语言,我们在这个周期中对Dart的改进工作包括有:
减少样板文件;
提高可读性的新语言功能;
实验性RISC-V支持;
升级的linter和新文档;
有关Dart2.17中所有新改进的更多详细信息,请查看博客。
Firebase和Flutter当然,构建应用的不仅仅是UI,应用的发布者需要一整套工具来构建、发布和运行应用,包括:身份验证、数据存储、云功能和设备测试等服务。
目前有多种服务都已经支持Flutter,包括Sentry、AppWrite和AWSAmplify。
Google提供的应用服务是Firebase,SlashData的开发者基准测试研究表明,62%的Flutter开发者在他们的应用中使用Firebase。
因此,在过去的几个版本中,我们一直在与Firebase合作,以便能更好地将Flutter的集成。这包括将Flutter的Firebase插件发布到1.0,添加更好的文档和工具,以及FlutterFireUI等新Widget,为开发人员提供可重用的身份验证和配置文件界面UI等等。
而在今天,我们宣布将Flutter/Firebase集成升级为Firebase产品的核心支持。我们正在将源代码和文档转移到Firebase存储库和站点中,开发者可以期待我们与Android和iOS同步发展Firebase对Flutter的支持。
此外,我们还进行了一些重大改进,以支持使用Firebase时支持崩溃报告服务Crashlytics。通过FlutterCrashlytics插件,开发者可以实时跟踪致命错误,提供与iOS和Android开发人员相同的功能集。
这包括重要的警报和指标,如“无崩溃用户”可帮助开发者掌握应用的稳定性。Crashlytics分析管道已升级和改进对Flutter崩溃的支持,从而更快可以地对问题进行分类、优先排序和修复问题。
最后我们简化了插件设置过程,因此只需几个步骤即可从Dart代码中启动和运行Crashlytics。
Flutter休闲游戏工具包对于大多数开发者来说,Flutter是一个应用框架。但是随着休闲游戏开发社区也在不断壮大,利用Flutter提供的硬件加速图形支持以及Flame等开源游戏引擎的需求一致在提高。
我们想让休闲游戏开发者更容易上手,因此在今天的I/O上,我们宣布发布休闲游戏工具包,它提供的模板和最佳实践的入门工具包以及广告和云服务。
尽管Flutter并非专为高强度3D动作游戏而设计的渲染引擎,但其中一些游戏的非游戏UI已经开始转向Flutter,包括拥有数亿用户的热门游戏,如PUBGMobile。
对于I/O,我们想看看我们可以将这项技术推到多远,所以Flutter团队创建了一个有趣的弹球游戏,由Firebase和Flutter的网络支持提供支持。
I/OPinball提供了一个围绕Google的吉祥物设计的游戏:Flutter的Dash、Firebase的Sparky、Android机器人和Chrome恐龙,我们认为这是展示Flutter的一种有趣方式。
由Google赞助,由社区提供支持我们喜欢Flutter的原因,不仅仅是一款Google开发的产品——而是因为它是一款“所有人”的产品。
开源意味着我们都可以参与并受益于它的成功,无论是通过贡献新代码或文档,创建核心框架软件包,编写书籍和培训课程来教授他人。
为了展示社区的最佳状态,我们最近与DevPost合作赞助了PuzzleHack挑战赛,让开发人员有机会通过使用Flutter重新构想经典的滑动拼图来展示他们的技能,这将展示web,desktop和mobile如何结合。
相关的视频链接:https://youtu.be/l6hw4o6_Wcs
原文:https://juejin.cn/post/7096647457592852493