从零开始学Flutter开发
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.4 Flutter 主流平台

Flutter 官方团队始终在不断探索,将Flutter 拓展到手机端以外的更多平台,如Web 端、PC端、嵌入式平台等,实现真正的跨平台—— 一套代码规范多平台运行。事实上,Flutter 的设计理念就是使其成为一个灵活且便携的UI 工具包,以适应各种需要绘制屏幕内容的平台。

未来的Flutter 将全面跨主流平台:Android、iOS、Windows(研发中)、macOS(研发中)、Linux(研发中)、Fuchsia OS(研发中)、Web(已经发布测试版SDK)、物联网系统(研发中)、后端等。下面我们大致介绍一下这些主流平台SDK 的研发情况。

1.Fuchsia OS

Google 的Fuchsia OS 可谓未来的热门操作系统,它的特点吸引了一大批开发者和学习者。Fuchsia OS 默认支持基于Flutter 和Dart 开发的应用。

Fuchsia OS 是一套可以运行在手机端、PC 端等不同平台上的跨平台系统,放弃了Linux 内核,基于Zircon 微核,采用Flutter 引擎和Dart 语言编写。Fuchsia OS 正式版预计会在2021 年推出,其或许会替代Android 系统。据传,Google 聘请了有着多年macOS 开发经验的资深工程师来负责Fuchsia OS 开发,目标是将其推向市场。

2.Flutter Web

Flutter Web 是一个基于Web 技术原理实现的Flutter 运行时环境。通过对Web 端的支持,Flutter 应用程序无须改动就能运行在标准Web 平台上。Flutter Web 可以大大简化我们开发Web页面的操作,无须编写繁杂的CSS、JavaScript、HTML,一套Flutter 代码就能轻松搞定一个Web 页面系统。

虽然Flutter Web 正式版SDK 还没有发布,但是已经有了预览版本可以体验,如图1-5 所示。

img

图1-5 Flutter Web 预览版本

目前,Flutter Web 应用在桌面浏览器端基本能达到每秒60 帧的渲染速度,但是在移动浏览器端,特别是在低端机型上还有很大的优化空间。

3.Flutter 桌面和嵌入式

Flutter也将支持桌面PC平台,目前处于研发阶段。未来可以用Flutter开发能够在Windows、Linux、macOS 上运行的应用。目前Flutter 已经推出了桌面应用和嵌入式应用的小例子,体验还不错,大家可以去Flutter 官网和GitHub 上学习。

目前Flutter 桌面和嵌入式项目处于实验测试阶段,相信在不久的将来会发布可用的SDK版本。

4.Flutter 游戏

Flutter 团队和2Dimensions 联合发布了一款游戏Flutter Developer Quest。这款游戏是完全通过Flutter 开发构建的,不仅在游戏性上毫不缩水,其代码也完全开源。可以说,这是一项Flutter在游戏开发领域的新尝试和应用拓展,该游戏的源代码可以在GitHub 上获得。