Flutter1.22 Release 简短介绍

2020-10-10  本文已影响0人  FY_Chao

原文:https://medium.com/flutter/announcing-flutter-1-22-44f146009e5f

Flutter最新发布版为1.22,本次更新主要为题集中在兼容了最新的 iOS 14 和 Android 11系统,可以预见Flutter作为一个款平台开发的框架,以后只要各平台有新的重大版本更新。Flutter为兼容各个平台都会有可能进行一次版本的更新。

那么来看下本次 Flutter 版本更新的要点:

支持最新的iOS 14 和 Android 11系统

iOS 14

  1. iOS方面主要是对 iOS14 兼容和Bug修复(对详细不感兴趣的以下可以略过)。
  1. 针对 iOS 新的 SF Symbols字体更新支持, CupertinoIcons 的图标更新。
  2. 在Flutter 1.22 中可以创建 iOS 14的App Clips,给出了对应的开发文档:flutter.dev上的文档简单的示例项目

Android 11

  1. 可以通过使用 MediaQuerySafeArea API, 对 Android 的多屏幕进行适配。
  2. 在显示软件键盘的动画与Android 11同步。
  3. Android 嵌入 API,已经默认从v1 版本切换到v2,v1版本将不再得到支持。

Flutter 框架相关

扩展"Button"的通用性

目前的Flutter中的按钮易用性太差,(个人感觉确实,很多地方直接用Gesture代替了)。引入了新的 Widgets 和 Themes。


image.png

新的国际化和本地化支持

自Flutter创立以来,Flutter已提供您的应用程序国际化(i18n)和本地化(l10n)所需的核心功能。但是,在此版本中,我们将最佳做法的意见纳入了我们的工具中,甚至在添加新的l10n信息时启用了热重装支持来更新您的应用。

Google Maps和WebView插件准备投入生产

相当于Flutter的开发人员认为Google Maps、WebView两款插件已接近于稳定可以放心使用了,大天朝的Google Maps还是算了。

Navigator 2.0

Flutter 通过Navigator.push()、Navigator.pop() 进行导航管理。在Navigator1.0时,我们并不能显示控制同时push几个页面,但是在Navigator2.0时我们可以通过显示创建一个导航器:

Navigator(
           // you can see and decide on every page in this list
         pages: [
           MaterialPage(
             child: ColorListScreen(
               colors: _colors,
               onTapped: (color) => setState(() => _selectedColor = color),
             ),
           ),
           if (_selectedColor != null) MaterialPage(child: ColorScreen(color: _selectedColor)),
         ],
         onPopPage: (route, result) {
           if (!route.didPop(result)) return false;
           setState(() => _selectedColor = null);
           return true;
         },
       ),

查看Flutter中的声明式导航和路由的文章

预览:Android的状态还原

支持Android的状态还原,当App 在后天运行时,被操作系统杀死时,我们可以通过保存App的UI状态,方便用户回到App时能够无缝操作。

预览:平滑滚动以提供不匹配的输入和显示频率

void main() {
  GestureBinding.instance.resamplingEnabled = true;
  run(MyApp());
}

根据所涉及的频率差异,启用此标志可以使滚动时的颤动减少多达97%。计划在以后的版本中默认启用此标志。

Flutter 开发工具相关

新增 Dart 命令行指令

Flutter 1.22 SDK开始,您会发现/ bin文件夹(您可能在PATH中包含该文件夹)同时包含flutter和dart命令。

image.png

新增 App 大小分析工具

Flutter 1.22 中发布的工具中包含App大小分析工具,可以在 build 任何平台包的时候添加--analyze-size flag 生成对应包大小的情况。

image.png
同时会生成 json 文件,通过Dart DevTools我们可以查看更多细节。flutter.dev上的“使用应用大小工具”文档

预览:DevTools中更新的网络页面

在 DevTools 中可以在查看 HTTP / HTTPS 响应体。

IntelliJ中的托管DevTools检查器选项卡

IntelliJ中的Inspector窗格和Dart DevTools中的Inspector选项卡,存在重复,Flutter 1.22开始直接从IntelliJ内部的Dart DevTools托管“Inspector”选项卡的功能。

优化Visual Studio Code中的输出链接

在适用于Visual Studio Code的Flutter扩展的最新版本中,优化了从终端或堆栈跟踪中的错误输出中的链接。

上一篇 下一篇

猜你喜欢

热点阅读