Privacy Ratings

最佳桌面和移动应用框架

跨平台框架用一套代码库为 Windows、macOS、Linux、Android 和 iOS 构建应用。框架的工具链和 SDK 会进入用它构建的每个应用,因此框架中的遥测可能成为您应用中的遥测。下列每个框架都按相同的公开标准评级:开源、跟踪器和遥测、资金来源以及独立审计。

我们推荐的技术栈是 Tauri 搭配 Svelte 和 TypeScript。Forward Email 的应用就是一个公开示例:一套 Tauri、Svelte 和 TypeScript 代码库同时提供网页邮箱以及桌面和移动应用。

  1. 1. Tauri 等级 B 编辑推荐

    使用 Web 前端和 Rust 后端构建桌面和移动应用的框架,使用操作系统的 WebView。

    推荐理由: 用一套 Web 代码库构建小巧、快速的桌面和移动应用,使用系统 Web 视图而不是捆绑浏览器。Rust 核心带有权限系统,没有遥测,并有公开的独立审计。与 Svelte 和 TypeScript 搭配良好,Forward Email 的应用(github.com/forwardemail/mail.forwardemail.net)就是如此,用一套 Tauri、Svelte 和 TypeScript 代码库发布到 Windows、macOS、Linux、Android 和 iOS。

    总部位于荷兰 (九眼联盟)。 分数 85/100。

  2. 2. Apache Cordova 等级 B

    Apache Software Foundation 推出的框架,使用 HTML、CSS 和 JavaScript 构建移动应用,打包在原生 WebView 中,并通过插件访问设备 API。

    总部位于美国 (五眼联盟)。 分数 80/100。

  3. 3. BeeWare 等级 B

    用于构建原生应用的 Python 工具集,包括使用各平台原生控件的 Toga GUI 工具包和 Briefcase 打包工具。

    分数 80/100。

  4. 4. GTK 等级 B

    用 C 编写的图形用户界面工具包,提供多种语言的绑定。由 GNOME 项目开发。

    总部位于美国 (五眼联盟)。 分数 80/100。

  5. 5. Iced 等级 B

    基于 Elm 架构的 Rust 跨平台 GUI 库,注重简洁性和类型安全。

    分数 80/100。

  6. 6. Kivy 等级 B

    支持多点触控的跨平台应用 Python 框架,自绘 GPU 加速控件,并使用 KV 设计语言。

    分数 80/100。

  7. 7. NativeScript 等级 B

    使用 JavaScript 或 TypeScript 构建原生 Android 和 iOS 应用的框架,可直接访问原生平台 API,可与 Angular、Vue、React、Svelte 或 Solid 配合使用。

    总部位于美国 (五眼联盟)。 分数 80/100。

  8. 8. Wails 等级 B

    使用 Go 和 Web 技术构建桌面应用的框架,前端使用操作系统的原生 WebView。

    分数 80/100。

  9. 9. Slint 等级 C

    使用声明式标记语言构建原生用户界面的 UI 工具包,提供 Rust、C++、JavaScript 和 Python API,适用于桌面、移动和嵌入式设备。

    总部位于德国 (十四眼联盟)。 分数 65/100。

  10. 10. .NET MAUI 等级 D

    Microsoft 推出的跨平台 UI 框架,用一套 C# 和 XAML 代码库构建原生 Android、iOS、macOS 和 Windows 应用。

    总部位于美国 (五眼联盟)。 分数 50/100。

  11. 11. Avalonia UI 等级 D

    适用于 .NET 的跨平台 UI 框架,使用 XAML 和 C# 自绘控件,支持 Windows、macOS、Linux、Android、iOS 和 WebAssembly。

    总部位于爱沙尼亚。 分数 50/100。

  12. 12. Capacitor 等级 D

    跨平台原生运行时,可在 Android 和 iOS 上以及作为渐进式 Web 应用运行网页应用,并提供用于原生设备功能的插件 API。

    总部位于美国 (五眼联盟)。 分数 50/100。

  13. 13. Electrobun 等级 D

    用 TypeScript 构建桌面应用的框架,原生层用 Zig、Objective-C 和 C++ 编写,打包体积小,并内置差分更新。

    分数 50/100。

  14. 14. Electron 等级 D

    通过捆绑 Chromium 和 Node.js,使用 JavaScript、HTML 和 CSS 构建跨平台桌面应用的框架。

    总部位于美国 (五眼联盟)。 分数 50/100。

  15. 15. Expo 等级 D

    基于 React Native 构建的框架和工具集,用于构建 Android、iOS 和网页应用,提供 CLI、SDK 模块、基于文件的路由和可选的云构建服务。

    总部位于美国 (五眼联盟)。 分数 50/100。

  16. 16. Flutter 等级 D

    Google 推出的 UI 工具包,用一套 Dart 代码库构建原生编译的移动、网页和桌面应用,使用自有渲染引擎绘制控件。

    总部位于美国 (五眼联盟)。 分数 50/100。

  17. 17. Framework7 等级 D

    用于构建具有 iOS 和 Material Design 外观的移动、桌面和网页应用的 HTML 和 JavaScript 框架,可与 Vue、React 或 Svelte 配合使用。

    分数 50/100。

  18. 18. Fyne 等级 D

    Go 的 GUI 工具包,用一套代码库构建桌面、移动和网页应用。

    分数 50/100。

  19. 19. Ionic 等级 D

    由 Web 组件构成的 UI 工具包,使用 HTML、CSS 和 JavaScript 构建移动、桌面和渐进式 Web 应用,可与 Angular、React 或 Vue 配合使用。

    总部位于美国 (五眼联盟)。 分数 50/100。

  20. 20. Jetpack Compose 等级 D

    Google 推出的 Android 应用声明式 UI 工具包,用 Kotlin 编写,界面由可组合函数构建。

    总部位于美国 (五眼联盟)。 分数 50/100。

  21. 21. Kotlin Multiplatform 等级 D

    JetBrains 推出的技术,可在 Android、iOS、桌面、网页和服务器之间共享 Kotlin 代码,并通过 Compose Multiplatform 共享用户界面。

    总部位于捷克。 分数 50/100。

  22. 22. Lynx 等级 D

    使用 CSS 和 React 等 Web 技术构建原生移动和网页界面的跨平台框架,采用多线程渲染引擎。

    分数 50/100。

  23. 23. NW.js 等级 D

    结合 Chromium 和 Node.js 的运行时,用 HTML 和 JavaScript 构建桌面应用,可从 DOM 调用 Node.js 模块。

    分数 50/100。

  24. 24. Quasar 等级 D

    基于 Vue.js 的框架,用一套代码库构建网页、移动和桌面应用,提供 Material 组件库和 CLI。

    分数 50/100。

  25. 25. React Native 等级 D

    Meta 推出的框架,使用 React 和 JavaScript 或 TypeScript 构建原生 Android 和 iOS 应用,渲染平台原生 UI 组件。

    总部位于美国 (五眼联盟)。 分数 50/100。

本列表的编制方式

条目排序时编辑推荐在前,其余按公开标准的分数排列。每个回答都附有证据链接,托管服务会经过自动测试。 评级变化时,列表会随之更新。

全部比较:跨平台应用框架。 标准与评分.

问题

跨平台应用的最佳框架是什么?

Tauri 搭配 Svelte 和 TypeScript,可用一套 Web 代码库构建小巧的桌面和移动应用,使用系统 Web 视图而不是捆绑浏览器,没有遥测,并有公开的独立审计。React Native 和 Flutter 是移动开发最常见的选择,但在某些配置下其工具默认发送使用数据。

Tauri 比 Electron 更好吗?

Tauri 应用通常小得多,因为它使用系统 Web 视图而不是捆绑 Chromium,而且 Tauri 也支持 Android 和 iOS。Electron 在每个平台上提供相同的浏览器引擎。证据请参见两者的评级。

Flutter 和 Expo 会收集遥测数据吗?

Flutter 和 Expo 的命令行工具默认发送使用数据,直到将其关闭。每个评级都链接到说明如何关闭的文档。