跳转至

应用打包

要使用 Electron 分发你的应用,你需要对其进行打包和重新品牌化。为此,你可以使用专用工具或手动方法。

使用工具

市面上有一些专门用于打包和分发 Electron 应用的工具。我们推荐使用 Electron Forge。你可以直接查看其文档,或参考 Electron 教程中的打包和分发部分。

手动打包

如果你更喜欢手动方式,有两种分发应用的方法:

  • 使用预构建二进制文件
  • 使用应用源代码归档

使用预构建二进制文件

要手动分发你的应用,你需要下载 Electron 的预构建二进制文件。接下来,包含你应用的文件夹应命名为 app,并放置在 Electron 的资源目录中,如下面的示例所示。

:::note 在下面的示例中,Electron 预构建二进制文件的位置用 electron/ 表示。 :::

macOS
electron/Electron.app/Contents/Resources/app/
├── package.json
├── main.js
└── index.html
Windows and Linux
electron/resources/app
├── package.json
├── main.js
└── index.html

然后在 macOS 上运行 Electron.app,在 Linux 上运行 electron,或在 Windows 上运行 electron.exe,Electron 将作为你的应用启动。然后 electron 目录将成为你要交付给用户的分发版本。

使用应用源代码归档(asar)

与其通过复制所有源文件来发布应用,你可以将应用打包成一个 asar 归档,以提高在 Windows 等平台上读取文件的性能,前提是你尚未使用 Parcel 或 Webpack 等打包器。

要使用 asar 归档替换 app 文件夹,你需要将该归档重命名为 app.asar,并将其放在 Electron 的资源目录下,如下所示,然后 Electron 会尝试读取该归档并从中启动。

macOS
electron/Electron.app/Contents/Resources/
└── app.asar
Windows
electron/resources/
└── app.asar

你可以在 electron/asar 仓库 中查找有关如何使用 asar 的更多详细信息。

使用下载的二进制文件重新品牌化

在将应用打包到 Electron 中之后,你希望在将其分发给用户之前对 Electron 进行重新品牌化。

  • Windows: 你可以将 electron.exe 重命名为任意名称,并使用 rcedit 等工具编辑其图标和其他信息。请将 electron_wer.dll 重命名为匹配的名称(例如,在 myapp.exe 旁边使用 myapp_wer.dll),以便 crash reporter 仍能捕获 fail-fast 崩溃。
  • Linux: 你可以将 electron 可执行文件重命名为任意名称。
  • macOS: 你可以将 Electron.app 重命名为任意名称,并且还必须重命名以下文件中的 CFBundleDisplayName、CFBundleIdentifier 和 CFBundleName 字段:

  • Electron.app/Contents/Info.plist

  • Electron.app/Contents/Frameworks/Electron Helper.app/Contents/Info.plist

你也可以重命名辅助应用,以避免在 Activity Monitor 中显示 Electron Helper,但请确保你已重命名辅助应用的可执行文件名。

重命名后的应用结构如下:

MyApp.app/Contents
├── Info.plist
├── MacOS/
│   └── MyApp
└── Frameworks/
    └── MyApp Helper.app
        ├── Info.plist
        └── MacOS/
            └── MyApp Helper

:::note

也可以通过更改产品名称并从源代码构建来重新品牌化 Electron。为此,你需要在 args.gn 文件中设置与产品名称对应的构建参数(electron_product_name = "YourProductName"),然后重新构建。

请记住,不推荐这样做,因为设置从源代码编译的环境并不简单,并且需要大量时间。

:::

本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 el/electron