白鹭h5打包exe

白鹭引擎是一个基于HTML5的开源游戏引擎,它可以帮助开发者快速地创建各种类型的HTML5游戏。由于它是基于H5的游戏引擎,我们可以将其打包成各种不同平台的应用,包括桌面应用(如EXE)。

本教程将介绍如何将用白鹭引擎制作的HTML5游戏打包成EXE文件。

## 一、原理

我们将通过使用 Electron 框架(https://www.electronjs.org/)将白鹭引擎生成的 H5 游戏封装为桌面应用。Electron 是一个用于构建跨平台(Windows、macOS、Linux)桌面应用的开源框架,它允许使用 JavaScript、HTML 和 CSS 构建原生应用。Electron 结合了 Chromium 和 Node.js,使得我们可以将 H5 游戏作为一个独立的桌面应用运行。

## 二、详细步骤

### 1. 安装 Node.js

在开始之前,请确保已经安装了 Node.js(https://nodejs.org/)。为了确认是否已经安装 Node.js,你可以在终端或命令提示符中输入以下命令:

```

node -v

```

### 2. 使用白鹭引擎创建一个简单的游戏

首先,我们需要使用白鹭引擎创建一个简单的游戏。如果已经有一个基于白鹭引擎的游戏,那么可以跳过这一步。我们将在这个教程中使用官方的 Hello World 示例。

### 3. 安装 Electron

现在我们需要为游戏项目安装 Electron。在游戏项目目录下,打开终端或命令提示符,并输入以下命令安装 Electron:

```

npm init -y

npm install electron --save-dev

```

这将在项目文件夹中创建一个 `package.json` 文件和安装 Electron 依赖。

### 4. 创建主进程文件

Electron 使用两种进程类型:主进程和渲染进程。主进程用于创建和管理窗口,渲染进程用于显示 HTML 内容。在项目根目录下,创建一个名为 `main.js` 的文件,并填入以下内容:

```javascript

const { app, BrowserWindow } = require('electron')

function createWindow () {

const win = new BrowserWindow({

width: 800,

height: 600,

webPreferences: {

nodeIntegration: false,

contextIsolation: true

}

})

win.loadFile('index.html')

}

app.whenReady().then(() => {

createWindow()

app.on('activate', () => {

if (BrowserWindow.getAllWindows().length === 0) {

createWindow()

}

})

})

app.on('window-all-closed', () => {

if (process.platform !== 'darwin') {

app.quit()

}

})

```

此代码创建一个窗口,并在其中显示项目根目录下的 `index.html` 文件。

### 5. 修改 package.json

为了在项目中启动 Electron,需要修改 `package.json` 文件。在`scripts`字段中,添加一个名为`electron`的任务,该任务通过运行`electron .`命令,使用项目的根目录作为主进程文件(`main.js`)。

```json

{

"scripts": {

"electron": "electron ."

},

"devDependencies": {

"electron": "^12.0.0"

}

}

```

### 6. 运行游戏

在项目目录下,打开终端或命令提示符,运行以下命令启动 Electron:

```

npm run electron

```

这将打开一个 Electron 窗口,显示我们在`index.html`里的白鹭游戏内容。

### 7. 打包成EXE文件

在项目目录下,执行以下命令来安装 electron-packager:

```

npm install electron-packager -g

```

接下来,运行以下命令将项目打包到一个 exe 文件:

```

electron-packager . MyApp --platform=win32 --arch=x64 --out=out

```

其中,“MyApp”是程序的名称,"out"表示输出文件夹的名称。程序将会打包到"out"文件夹中,可以自行查看并运行打包好的 exe 文件。

现在你已经成功地将白鹭引擎开发的 H5 游戏打包成了EXE文件,可以在 Windows 操作系统上进行测试和分发。同样的过程也可以适用于打包成 macOS 和 Linux 的应用程序。