跨平台软件技术选择问题:Kotlin MP / Flutter / Tauri / React Native / Electron / Capacitor / HotwiredNative
admin
#1 · 目前考虑客户端要求至少支持 Android、iOS、Windows,最好支持 Web,项目需要在本地读写数据库,考虑 SQLite / Realm。
- Electron 不支持移动平台,且编译出来的可执行文件太大
- Flutter 需要新学 Dart,且本人对 Google 除了 Gmail 和 Search 之外的产品失去了信心
- Tauri 纯粹社区项目,支持测试跨平台编译(Linux 上编译 apk/exe),可以使用 Svelte 等各种框架写前端
桌面平台 webview 可以配置 SOCKS5:https://tauri.app/reference/config/#proxyurl The proxy URL for the WebView for all network requests. Must be either ahttp://or asocks5://URL. - Kotlin multiplatform 有 Jetbrains 背书,但很新,本人浅尝 Kotlin 之后觉得语法有点怪
- React Native 有 Meta 背书,但 RN 推荐你用 Expo 框架,不要直接用 RN,这个却不是 Meta 的
- https://capacitorjs.com/ / https://cordova.apache.org/
- https://native.hotwired.dev/
没一个好用的,各有各的问题,我可能更倾向 RN 一点。所谓的跨平台更多是一种噱头,除非就做 SPA 这样的 Web App,用终端设备的浏览器保证跨平台性,否则注定会陷入 API 不同所带来的泥沼之中。