前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【译】Flutter beta 2 Now

【译】Flutter beta 2 Now

作者头像
flyou
发布2019-08-06 17:08:22
2.3K0
发布2019-08-06 17:08:22
举报
文章被收录于专栏:flutter开发者flutter开发者

没错,就在今天Flutter宣布发布了Flutter的第二个测试版本(V0.2.8),借助它可以帮助开发者在更快的时间内创建高质量的IOS和Android应用。

回顾Beta1

自从我们于2月份在巴塞罗那举行的移动世界大会上发布第一个测试版以来,我们一直很高兴看到他们的强烈反响 我们在通用技术出版社(例如Ars Technica,TechCrunch,VentureBeat,9to5Google)上看到了一系列优秀的帖子,我们的社区很多人都在Medium上发布了新的Flutter帖子,还有大量新兴开发人员和组织下载并使用Flutter。

看下beta2

更容易安装

我们听到反馈意见,安装Flutter可能会更容易; 安装beta 1需要使用git命令行工具克隆我们的GitHub repo。所以我们重新安装了我们的安装程序,现在只需下载和解压缩安装档案即可支持安装beta2:Windows,macOS和Linux。对于Windows用户,我们还添加了一个酷炫的新Flutter控制台,以便在下载后立即开始使用Flutter命令:

改进的开发工具

Flutter的开发人员工具和经验团队发布了M23工具里程碑,其中包含许多改进。Android Studio&IntelliJ获得了一个新的“大纲视图”,提供构建方法中的UI小部件的结构化树视图,并支持“保存时格式”。VS Code获得了对运行测试,多项目支持和一个新选择器的支持,以在安装多个时选择当前的Flutter SDK。

改进的资源系统

我们已经对我们的资产系统进行了相当重要的优化。我们现在使用底层平台(Android,iOS)所期望的结构来放置资产。这具有许多优点。

首先,由于我们不需要提取资源,所以Flutter应用程序现在可以更快地启动。之前的资源系统偶尔会导致旧款Android手机的发布时间延迟。

其次,它允许插件从插件的本机代码一侧(即Java,Kotlin,Objective-C或Swift)访问资源。让我们来看一个具体的例子,video_player我们几个月前推出的插件。

到目前为止,它只能播放来自网络的视频,但一些开发人员要求能够使用Flutter的资产系统“传递”已经嵌入到应用中的视频文件。使用测试版2和版本0.4.0的插件,现在可以实现了。

因为我们将资源作为基础平台所期望的,因此可以在Flutter和本地平台之间共享。我们提供了新的API(Android,iOS),用于获取适用于本机代码的资源查找键,例如Android AssetManager:

代码语言:javascript
复制

Dart 2默认启用

我们的第一个测试版提供了Dart 2编程语言的预览版。我们的测试显示Dart 2接近完成,并且非常稳定。Flutter的第二个测试版默认启用Dart 2。结果你会看到更快的异步调用,以及更丰富的类型系统。

作为新型系统如何为您节省大量调试时间的一个例子,请考虑以下几点:

代码语言:javascript
复制

该代码有一个错误。它将一串字符串和任务传递给一个需要一个小部件列表的小部件。静态分析并没有捕捉到这一点,因为程序员有意使用松散的静态类型作为待办事项列表(List简写为List)。

接下来考虑应用程序如何使用此列表:

代码语言:javascript
复制

由于对待办事项列表项目的访问是有条件的,所以错误会在晚些时候发生。在Flutter beta 1中,启动时不会出现错误,只有当用户点击该按钮后,才会通知字符串不能用作小部件:

代码语言:javascript
复制

通过Dart 2中新的完整运行时检查,我们可以避免像这样的“等待发生的错误”,而不是提前失败,即在代码对泛型类型提出错误要求的时候。在这种情况下,只要应用程序启动,我们就会失败,动态列表todo将传递给TodoList构造函数,该构造函数需要List:

控制台输出:

代码语言:javascript
复制

Dart 2和可选的new / const

Dart 2还增加了在调用构造函数时使新和const关键字可选的支持,正如我们上一次测试版博客文章中所讨论的。在我们对beta 2的最终测试期间,我们发现了一些问题,所以现在我们推荐推迟任何非实验性的可选new / const使用,直到我们启动一个新的beta版本宣告它准备就绪。

呼吁行动:将您的代码升级到Dart 2

与所有变化一样,需要付出代价:如果您有现有的Flutter代码,则可能需要升级其中的一部分才能与Dart 2兼容。要开始升级,请确保将Flutter SDK更新为beta 2(v0。 2.8)以及用于Android Studio,IntelliJ或VS代码的Flutter IDE插件到最新版本。

接下来,验证您的代码是否通过了静态分析(从终端,运行flutter analyze或使用Android Studio / IntelliJ或VS代码中的问题视图)。然后,请参阅我们突破性变更后的全面指导,了解如何解决使用Dart 2中新的,更全面的运行时类型检查可能会遇到的问题。

如果您需要多一点时间才能完成此操作,则可以使用Dart 2退出暂时切换回旧的行为。预计此选择退出仅适用于单个测试版。

最后的想法

我们希望您会喜欢我们的第二个测试版,并感受我们在改进Flutter产品方面的持续承诺,因为我们正在开发下一个测试版。我们非常欢迎反馈意见,并希望你们都会分享你们的工作。我们真的很高兴看到Flutter被用来构建伟大而美丽的应用程序的所有方式!

我怀疑这个是个坏掉的二维码,分享到朋友圈试试?

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-04-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 flutter开发者 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 回顾Beta1
  • 看下beta2
    • 更容易安装
      • 改进的开发工具
        • 改进的资源系统
          • Dart 2默认启用
          • Dart 2和可选的new / const
          • 呼吁行动:将您的代码升级到Dart 2
          • 最后的想法
          相关产品与服务
          命令行工具
          腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档