用 Flutter 测试了下桌面和 Web 的跨端开发,感觉有点拉胯

2023-05-31 15:50:44 +08:00
 shitiven

RT.

用 Flutter 写了个小 Demo ,方便在可以同时编译成桌面端以及 Web 端

但是好像在我的 M1 上运行的还算流畅,在之前的 Intel MacbookPro 上就感觉有点拉胯....

当然还有很多奇葩的坑,也有可能是自己就看了下文档,花了差不多一个周末多点的时间,不是很熟练的问题....

折腾不起,最后还是让 Team 用了 Electron ,前端小姐姐弄起来还是又快又猛的......

顺便调研下这里有公司用 Flutter 直接开发上线的桌面客户端 以及 Web 端的?

测试小 Demo

Web 端: https://shitiven.github.io/workishapp/

MacOS M1: https://shitiven.github.io/workishapp/workishapp4m1.zip

5105 次点击
所在节点    程序员
33 条回复
NessajCN
2023-05-31 15:57:23 +08:00
你是不是搞混了,flutter 是用来写移动端的。桌面端本来就不推荐 flutter
shitiven
2023-05-31 16:03:09 +08:00
@NessajCN 移动端目前开发没有问题,只是测试下桌面的能力
x77
2023-05-31 16:13:00 +08:00
Flutter 开发 Windows 桌面应用还是不错的。Windows .Net WPF/UWP 桌面应用本来也慢,要是搞 Win32 应用工作量高出很多,要是用 QT/GTK 那些还不如 Flutter 利索。
kennir
2023-05-31 16:26:07 +08:00
我们已经用 flutter 发了好几个移动端应用了,写 dart 的体验已经几乎和 kotlin 一样好了
flutter 目前是不太适合做桌面应用的,我记的还不支持多窗口,但是最近 google 的重心应该就是在桌面支持上,发展很快。

btw: 我记得 V2EX 前几天有个朋友发了个帖子就是 flutter 写了一个粘贴板相关的桌面应用
yaocai321
2023-05-31 16:28:11 +08:00
细说小姐姐又快又猛。
duan602728596
2023-05-31 16:35:08 +08:00
本来就是,你以为你解决了一个问题,但是会引进来其他问题
Highlight1024
2023-05-31 16:40:01 +08:00
现在 Mac App Store 上的高德地图就是用 flutter 写的,体验确实不太好。
Joliph
2023-05-31 16:42:54 +08:00
企业微信啊,4 端都用的 flutter
encro
2023-05-31 16:54:16 +08:00
@x77 所以 MAUI 来了。。。
encro
2023-05-31 16:56:17 +08:00
@Joliph

这个,你搞错了吧。。。。

我记得微信以前是嵌了 nw.js 库,后来看到 qt 。想来企业微信也是主要用 qt 才对,那体验不像 flutter 。
yuedanwork
2023-05-31 17:02:36 +08:00
虽然 flutter 桌面和 web 是很拉胯

但简单看了下你的 demo ,很明显,你的 demo 拉跨并不只是 flutter 问题。

可以照着官网和社区的优化方式针对性的优化,基本还是能用的。

另外尽量采用高版本
Vitta
2023-05-31 17:04:00 +08:00
慢慢来吧,flutter 貌似开始往桌面端发力了。
shitiven
2023-05-31 17:04:55 +08:00
@yuedanwork 说的很有道理,所以我也不敢把源码放出来.....
shitiven
2023-05-31 17:09:07 +08:00
@Vitta 还有很有潜力的,基本上只要 UI 交互上设计好,一套代码基本很小的代价可以同时满足移动端 和 PC 端了 (包括 Web)
onlyForward
2023-05-31 17:10:02 +08:00
flutter web 问题太多了,光一个路由问题就搞了好久。
shitiven
2023-05-31 17:12:19 +08:00
@onlyForward 是的 这个有花费我一半的时间在上面捣鼓,最后用的 vrouter
AlexV525
2023-05-31 17:16:10 +08:00
这个大概率是你写的问题...随便一个 ListTile 怎么都可以这么卡

(利益相关:Flutter 5 年开发)
shitiven
2023-05-31 17:24:06 +08:00
@AlexV525 嗯 最开始官方文档 写个 ListView 展示 明显可以,当加入动画以及一些 Web 端的 URL 策略就开始有点卡了, 后面就感觉要翻到重来了......
Xmarmalade
2023-05-31 17:29:12 +08:00
试试拆分 widget, btw 用的哪个状态管理
zcl0621
2023-05-31 17:29:50 +08:00
之前项目就是 flutter 涵盖 ios andorid pc 和 macos ,今年只保留了 ios 和 andorid 用 flutter ,pc 和 macos 切换到了 electron 。 桌面端适配真是要了老命了
还有个项目尝试 flutter 涵盖 ios android 和 web ( web 直接放弃了 完全没法用)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/944554

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX