跳到主内容

Flutter桌面支持

关于Flutter对桌面应用支持的通用信息。

Flutter提供编译原生Windows、macOS或Linux桌面应用的支持。Flutter的桌面支持也扩展到插件——您可以安装支持Windows、macOS或Linux平台的现有插件,或者您可以创建自己的插件。

创建新项目

#

您可以使用以下步骤创建具有桌面支持的新项目。

设置桌面devtools

#

参考您目标桌面环境的指南

如果flutter doctor 发现某个您不想开发的平台的错误或缺失组件,您可以忽略这些警告。或者,您可以使用flutter config命令完全禁用该平台,例如

flutter config --no-enable-ios

其他可用标志

  • --no-enable-windows-desktop
  • --no-enable-linux-desktop
  • --no-enable-macos-desktop
  • --no-enable-web
  • --no-enable-android
  • --no-enable-ios

启用桌面支持后,请重新启动您的IDE,以便它可以检测到新设备。

创建并运行

#

使用桌面支持创建新项目与创建新的Flutter项目用于其他平台没有区别。

配置好桌面支持环境后,您可以从IDE或命令行创建并运行桌面应用程序。

使用IDE

#

在配置好环境以支持桌面后,请确保在IDE已经运行的情况下重新启动它。

在您的IDE中创建一个新应用程序,它会自动创建iOS、Android、Web和桌面版本的应用程序。从设备下拉菜单中,选择windows (desktop)macOS (desktop)linux (desktop),然后运行您的应用程序,以在桌面上看到它启动。

从命令行

#

要创建一个包含桌面支持(以及移动和Web支持)的新应用程序,请运行以下命令,将my_app替换为您的项目名称

flutter create my_app
cd my_app

要从命令行启动您的应用程序,请输入以下命令之一,从包的顶部开始

C:\> flutter run -d windows
flutter run -d macos
flutter run -d linux

构建发布版应用

#

要生成发布版本,请运行以下命令之一

PS C:\> flutter build windows
flutter build macos
flutter build linux

将桌面支持添加到现有的Flutter应用

#

要将桌面支持添加到现有的Flutter项目,请在项目根目录中的终端中运行以下命令

flutter create --platforms=windows,macos,linux .

这将向您现有的Flutter项目添加必要的桌面文件和目录。要仅添加特定的桌面平台,请更改platforms列表以仅包含您想要添加的平台。

插件支持

#

Flutter在桌面上的支持使用和创建插件。要使用支持桌面的插件,请遵循使用包中的插件步骤。Flutter会自动将必要的本机代码添加到您的项目中,就像任何其他平台一样。

编写插件

#

当您开始构建自己的插件时,您需要牢记联合(federation)。联合是指定义几个不同的包的能力,每个包针对不同的平台集,组合成一个插件,以便开发人员易于使用。例如,url_launcher的Windows实现实际上是url_launcher_windows,但Flutter开发人员只需将url_launcher包作为依赖项添加到他们的pubspec.yaml文件中,构建过程就会根据目标平台拉取正确的实现。联合很有用,因为具有不同专业知识的不同团队可以为不同的平台构建插件实现。只要与原始插件作者协调,您就可以将新的平台实现添加到pub.dev上的任何认可的联合插件中。

有关更多信息,包括有关认可插件的信息,请参阅以下资源

示例

#

您可以将以下示例作为桌面应用程序运行,还可以下载和检查源代码以了解有关Flutter桌面支持的更多信息。

Wonderous应用 运行应用 , 仓库

一个展示应用,使用Flutter创建高度表现力的用户界面。Wonderous专注于提供可访问和高质量的用户体验,同时包含引人入胜的交互和新颖的动画。要将Wonderous作为桌面应用程序运行,请克隆该项目并按照README中提供的说明进行操作。

Flokk 公告博客 , 仓库

一个Google联系人管理器,与GitHub和Twitter集成。它可以与您的Google帐户同步,导入您的联系人,并允许您管理它们。

Photo Search应用

一个构建为桌面应用程序的示例应用程序,它使用受桌面支持的插件。