Flutter登陆Windows,还预告将支持UWP

Google开发的UI工具Flutter,现不只大举入侵iOS和Android应用程序的开发工作,在7月的时候,Canonical还与Google合作发布Linux版本Flutter,而现在,官方发布Flutter Windows的Alpha测试版,要让Windows开发人员,也能够用Flutter开发应用程序,并且还开始着手试验支持UWP。Flutter Windows支持Windows 7以上版本,预计在数月内就会推出稳定版。

官方表示,因为Windows仍然是桌面与笔记本的热门操作系统选择,而且有超过一半的Flutter开发人员使用Windows,因此Windows自然成为Flutter支持的目标。

Flutter是一个跨平台的UI开发工具,使得程序代码可在iOS和Android等操作系统上重复使用,而且也能够让应用程序,直接与底层平台服务交互,开发人员可以在各平台,简单地交付高性能应用程序,在尽可能共享程序代码的同时,还可使用各平台独有的功能。

Flutter的核心是一个引擎,能够提供所有Flutter应用程序需要的原语,在需要搭建新框架的时候,核心引擎便会负责对合成的场景进行光栅化,其提供了Flutter核心API的低端实例,像是绘图、文本输出、文件和网络I/O,还有无障碍访问支持、扩展组件架构、Dart Runtime以及编译工具链。

Flutter每添加支持一个平台,就必须扩展其核心框架,随着支持的平台越来越多,Flutter核心功能也就越来越丰富,从一开始的Android和iOS平台,提供以Material Design和触碰操作为基础的移动设备用户接口开发,目的是让程序接口在两平台,都能完美地呈现。

而现在Flutter开始支持桌面形式的应用程序,包括网页、Windows、macOS和Linux等,因此Flutter必须提供全新的控制功能,除了输入方面必需要更好地支持键盘、鼠标等控制器之外,显示屏幕的尺寸也大上许多。

在Flutter添加支持Windows的同时,也必须支持包括CLI与IDE等Windows上的工具链,还需要新的Runner,添加用来加载并且执行Flutter程序代码的Win32/C++程序,另外,Flutter组件系统也需要支持每个平台原生程序代码,Flutter组件本身就是Dart与原生平台程序代码的混合物,因此要编译进Windows Flutter应用的扩展组件,之中也包含Windows平台原生程序代码。

现在官方发布Flutter Windows的Alpha版本,想尝鲜的开发者已经可以试用,也可以在GitHub上关注Beta测试的进展,目前仍在进行的工作,包括提高无障碍功能、全球化和本地化,强化键盘和文本处理功能,而且还需要支持命令行参数等。除了支持经典的Win32 API之外,官方也在测试基于UWP的Flutter壳层版本,而这将使Flutter可以开始支持Xbox(下图)以及Windows 10X模拟器等设备。