Flutter 完成全平台制霸:实现 Windows 应用支持

2020 年 9 月 25 日

Flutter 完成全平台制霸:实现 Windows 应用支持

Flutter 作为跨平台开发利器,一经推出便在业内赢得了不错的口碑。Flutter 最初是应用于 iOS 和 Android 应用开发的,后扩展到了 Web、macOS 和 Linux,现如今也可以开发 Windows 应用了,补齐了全平台的最后一块拼图。

Flutter 作为谷歌出品的 UI 框架,凭借“多端一致”和“渲染性能”两方面的优势,深受广大开发者的推崇。谷歌曾表示 Flutter 的目标是提供一个可移植的框架,从而在各种平台上都能构建以原生速度运行的 UI。这也意味着,在谷歌眼中,Flutter 不止于跨平台开发,而是全平台制霸。

今年 7 月 8 日谷歌发布了 Flutter 在 Linux 上的第一个 Alpha 版本。而现在,谷歌宣布 Flutter 在 Windows 上的 Alpha 版本正式发布。

对于仅 Windows 10 就有超过 10 亿安装量的桌面操作系统来说,Flutter 的这个版本已经让人等了很久了。Flutter 的 Alpha 版最初于 2017 年在谷歌的 I/O 开发者大会上发布,将近一年后发布了 Beta 版。Flutter 最初是为 Android 和 iOS 应用开发而设计的,但此后已扩展到了 Web、macOS 和 Linux 几大平台上,目前这些平台的分支都处于 Alpha 或 Beta 版本状态。

开发人员在为桌面或移动设备设计应用时,必须考虑很多平台专属的独特因素,例如不同的屏幕尺寸以及人们与设备的交互方式。在智能手机上,人们通常使用基于触摸和滑动的手势,而键盘和鼠标通常是 PC 和笔记本电脑上的标配。这意味着 Flutter 必须扩展其支持范围以涵盖其他输入选项。

复制

一如谷歌所言,Flutter 利用谷歌自己开发的 Dart 编程语言,使开发人员能够构建出在各个运行平台上都有原生体验的应用,并尽可能共享代码,以避免重复工作并“拥抱不可避免的差异”。

像其他跨平台框架一样,Flutter 鼓励开发人员专注于要构建的内容,而不是应用的目标设备。对于没有资源为多个平台单独安排开发力量的较小公司或独立开发人员而言,Flutter 的意义要大得多,尽管它还能让较大的公司简化和增强其开发流程。

制作集成开发环境(IDE)的软件开发公司 JetBrains 的最新报告发现,Flutter 的受欢迎程度在过去一年中提高了 9 个百分点,在跨平台移动框架中仅次于 Facebook 的 React Native。

根据谷歌的说法,Flutter 仅在 Google Play 商店上就已经为 Android 生成了 100,000 多个应用,其中包括来自 eBay 等知名公司的应用。随着它继续向更多平台开放支持,它的采用率也有望继续提升。谷歌表示,他们自己的数据表明 Flutter 开发人员中有超过半数正在使用 Windows,因此为微软这个无所不在的操作系统提供原生桌面支持是非常有意义的。

适用于 Windows 的 Flutter

在 Windows 机器上安装 Flutter SDK 之后,你需要在路径中包含 Flutter 目录的控制台窗口中,运行以下命令以查看是否需要任何平台依赖项来完成设置:

复制代码
content_copy
C:\src\flutter>flutter doctor

该命令会检查开发的环境并显示 Flutter 安装状态的报告。并输出开发者可能需要安装的其他软件或要执行的其他任务。例如:

复制代码
[-] Android toolchain - develop for Android devices
Android SDK at D:\Android\sdk
Android SDK is missing command line tools; download from https://goo.gl/XxQghQ
• Try re-installing or updating your Android SDK,
visit https://flutter.dev/setup/#android-setup for detailed instructions.

将所有缺少的依赖项安装完成后,开发者可以再次运行 flutter doctor 命令以验证是否正确设置了所有内容。更多安装方面的问题可以查看 Flutter 的官方博客

目前,Flutter 支持 Windows 7 及更高版本的设备,谷歌表示将在未来几个月内继续“稳定”Flutter 的 Windows 版本。

延伸阅读

https://venturebeat.com/2020/09/23/google-expands-its-flutter-development-kit-to-windows-apps/

2020 年 9 月 25 日 08:00 2390
用户头像
李俊辰 InfoQ编辑

发布了 178 篇内容, 共 42.7 次阅读, 收获喜欢 134 次。

关注

评论

发布
暂无评论
发现更多内容

我还在生产玩 JDK7,JDK 15 却要来了!|新特性尝鲜

楼下小黑哥

Java jdk

阿里最“短命”的P10?入职不到3周,钉钉副总裁张志琦因个人原因离职

程序员生活志

阿里巴巴 互联网热点

【得物技术部】流量之战—性能优化三十六计

得物技术部

Java 流量 得物技术部 商品 电商平台

地方政府争夺数字货币试点,互联网巨头参与测试,央行数字货币即将来临

CECBC区块链专委会

央行数字货币 金融行业

白鹭引擎助力《梦幻西游网页版》刷新h5游戏新高度

DT极客

架构师训练营第8周总结

邵帅

架构师训练营第8周作业

邵帅

《RabbitMQ》如何保证消息的可靠性

Java旅途

面经手册 · 第2篇《数据结构,HashCode为什么使用31作为乘数?》

小傅哥

数据结构 java hashcode 小傅哥 面试官

NOSQL or NEWSQL

大唐小生

sql nosql

作业一

Kiroro

加快速度推进区块链融合发展

CECBC区块链专委会

区块链 产业落地 金融行业

高教授:区块链软硬件相结合能提升系统性能 也能保持一定的灵活性

CECBC区块链专委会

分布式 区块链技术 落地应用 金融行业

训练一个数据不够多的数据集是什么体验?

华为云开发者社区

数据 数据集 华为云 标签 modelarts

一周信创舆情观察(7.27~8.2)

统小信uos

凭实力蝉联第一!Flink 又双叒叕上榜啦

Apache Flink

flink

cxuan读者的外包面试之旅

cxuan

Java 面试 程序人生

一文带你掌握OBS的两种常见的鉴权方式

华为云开发者社区

Rest OBS 鉴权 Header携带签名 URL携带签名

计算机网络基础(十四)---传输层-UDP协议详解

书旅

计算机网络 网络 协议栈 通信协议

JVM系列之:从汇编角度分析Volatile

程序那些事

Java JVM JIT 汇编

尚未到来的远程工作

ThoughtWorks洞见

敏捷 敏捷开发 软件开发 远程办公 thoughtworks

不仅性能秒杀Hadoop,现在连分布式集群功能也开源了

爱倒腾的程序员

大数据 涛思数据 tdengine 物联网 时序数据库

week9作业1

JVM类加载与执行

superman

JVM 类加载

技术贴丨教你使用华为云鲲鹏服务器部署Discuz!论坛

华为云开发者社区

鲲鹏920 服务器 华为云 Discuz! 华为云鲲鹏

总结

Kiroro

Docker-compose实战

北漂码农有话说

SpreadJS 纯前端表格控件应用案例:SPDQD 质量数据云

Geek_Willie

SpreadJS 案例

数据库实践丨MySQL多表join分析

华为云开发者社区

MySQL 数据库 华为云 join 多表join

Ubuntu启动盘无法格式化

kraken0

为什么你总觉得自己是对的?

池建强

个人成长

Flutter 完成全平台制霸:实现 Windows 应用支持-InfoQ