这篇文章极其具有时效性,在目前,
flutter
不支持多窗口,但是已经有这么一篇文档[1]。而且 flutter desktop 的多窗口可能已经计划中了。
SETSUNA 的 UI 需要满足条件:桌面移动端统一 UI(没错过了半年还在选型)。现阶段可以选择的只有一个框架:flutter
。而且:
- flutter 使用
skia
绘图而不是调用原生组件,表现统一 - flutter 可以方便的响应式设计,UI 可以用同一套代码(只要可以,顺路兼容手机、折叠屏、横向平板、桌面布局)
flutter 本就是先给移动端设计,可以直接用 dart
完成很多工作。但是在调研桌面时发现一个问题:找不到多窗口 API! 这不行。虽然 flutter 是允许原生编程,那我能会 windows
开发吗?!
等会,flutter 是不是已经支持了 web。那么,这波不得两面包夹芝士?
把 flutter 套进 electron
是不是就完成需求了!(顺便还可以实现简单 PWA 版本)
但是桌面端不选择 electron
,咱用 tauri
!毕竟现在全平台都 webkit(blink)
,而且 flutter
使用 canvaskit
,不需要担心表现…