本節我們學習 Electron
的應用部署。如果我們要使用 Electron
部署我們的應用程序,則需要進行打包和重塑??梢允褂孟旅鎺讉€第三方打包工具來實現:
electron-forge
electron-builder
electron-packager
這些打包工具將覆蓋發布一個 Electron
應用所需采取的所有步驟,例如打包應用程序,重組可執行程序,設置圖標和可配置的創建安裝程序。
手動發布
我們可以選擇手動發布我們的 app
,為了使用 Electron
部署你的應用程序,需要下載 Electron
的 prebuilt binaries
。然后存放應用程序的文件夾需要叫做 app
,并且需要放在 Electorn
的資源文件夾 Resources
下。注意,Electron
的預制二進制文件的位置用 electron/
表示。
示例:
Linux
和 Windows
中的目錄結構如下所示:
electron/resources/app
├── package.json
├── main.js
└── index.html
在 macOS
中的目錄結構如下所示:
electron/Electron.app/Contents/Resources/app/
├── package.json
├── main.js
└── index.html
然后運行 Electron.app
,或者 Linux
中的 electron
,Windows
中的 electron.exe
,接著 Electron
就會以應用程序的方式啟動。electron
文件夾將被部署并可以分發給最終的使用者。
將應用程序打包成一個文件
除了通過拷貝所有的資源文件來分發應用程序之外,我們還可以通過打包應用程序為一個 asar
庫文件以避免暴露源代碼。
為了使用一個 asar
庫文件代替 app
文件夾,我們需要修改這個庫文件的名字為 app.asar
,然后將其放到 Electron
的資源文件夾下,然后 Electron
就會試圖讀取這個庫文件并從中啟動。
示例:
如下所示,在 Windows
和 Linux
中:
electron/resources/
└── app.asar
在 macOS
中則為:
electron/Electron.app/Contents/Resources/
└── app.asar
使用下載好的二進制文件進行重新定制
在使用 Electron
打包應用程序之后,我們可能需要在分發給用戶之前將 Electron
進行重新定制。
Windows
可以將 electron.exe
改成任意自己喜歡的名字,然后可以使用像 rcedit
編輯它的 icon
和其他信息。
Linux
可以將 electron
重命名為任意自己喜歡的名字,
macOS
我們可以將 Electron.app
重命名為任意自己喜歡的名字,然后需要將一些文件中的 CFBundleDisplayName
, CFBundleIdentifier
以及 CFBundleName
字段一并修改掉。
這些文件如下所示:
Electron.app/Contents/Info.plist
Electron.app/Contents/Frameworks/Electron Helper.app/Contents/Info.plist
我們也可以重命名幫助程序以避免它在系統活動監視器中顯示為Electron Helper
, 但是請確保你已經修改了幫助應用的可執行文件的名字。
一個重命名后的應用程序的結構可能像下面所示:
MyApp.app/Contents
├── Info.plist
├── MacOS/
│ └── MyApp
└── Frameworks/
└── MyApp Helper.app
├── Info.plist
└── MacOS/
└── MyApp Helper