laya3如何打包mac包

1、测试环境

本文用以下环境运行:

Macos 13.2.1 + laya3.3.3 + node20.12.2

2、打包游戏web包

以laya实例项目为例,我们先新建一个示例项目

然后发布web包

3、打包mac包

1)初始化项目

在release目录下新建一个mac文件夹,在该文件夹下打开终端

执行命令

npm init

根据提示填写项目基本信息

2)安装打包工具

然后安装electron的打包工具,执行以下命令:

npm install --save-dev @electron-forge/cli

3)安装依赖

工具安装完成后,再执行一个导入命令:

npx electron-forge import

打开package.json文件,你可以看到scripts下多了一些项并且新增了devDependencies子段。我们等待依赖安装完成。

javascript 复制代码
 "scripts": {
    "start": "electron-forge start",
    "test": "echo \"Error: no test specified\" && exit 1",
    "package": "electron-forge package",
    "make": "electron-forge make"
  },
  "keywords": [
    "layatomacdemo"
  ],
  "author": "you",
  "license": "ISC",
  "devDependencies": {
    "@electron-forge/cli": "^7.10.2",
    "@electron-forge/maker-deb": "^7.10.2",
    "@electron-forge/maker-rpm": "^7.10.2",
    "@electron-forge/maker-squirrel": "^7.10.2",
    "@electron-forge/maker-zip": "^7.10.2",
    "@electron-forge/plugin-auto-unpack-natives": "^7.10.2",
    "@electron-forge/plugin-fuses": "^7.10.2",
    "@electron/fuses": "^1.8.0"
  },

4)测试运行

依赖安装完成之后,将打包好的web包放到mac目录下,并在mac目录下新建一个main.js脚本文件,文件内容如下:

javascript 复制代码
const { app, BrowserWindow } = require('electron/main')

const createWindow = () => {
    const win = new BrowserWindow({
        width: 1920,
        height: 1080
    })

    win.loadFile('./web/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()
    }
})

脚本中,可以设置窗口大小(1920,1080)和游戏包入口文件路径(./web/index.html)。

这时在终端中输入npm run start文件即可成功运行游戏。

5)打包

测试没问题可以关闭游戏,然后我们接着在终端中执行打包命令:

bash 复制代码
npm run make

打包完成后,可以在out目录下看到打包好的包,正常使用即可。

相关推荐
秋雨梧桐叶落莳2 小时前
【iOS】从源码深入理解RunLoop机制
macos·ios·objective-c·cocoa·cocoapods·uikit
别走!万哥爱你3 小时前
Mac访达中不显示iPad或iPhone怎么办?
macos·iphone·ipad
ACP广源盛139246256734 小时前
M6/M5 Pro Mac mini 端侧 AI 爆发@ACP#YLB3118 存储扩展芯片在本地 AI 服务中的机会与落地场景
大数据·网络·数据库·人工智能·嵌入式硬件·macos
guo_wen_qiang7 小时前
mac中docker desktop服务端开启远程访问
运维·服务器·macos·docker
OsDepK21 小时前
xcode应用构建至testflight测试流程
ide·macos·xcode
guo_wen_qiang1 天前
一个好用的命令——查看文件大小
linux·macos
阿童木写作2 天前
跨境电商图片翻译工具推荐:批量图片翻译+视频字幕翻译+智能抠图
python·macos·音视频·xcode
攀小黑2 天前
vue3+Web Speech API 封装了一个弹窗语音输入
前端·macos·xcode
DevLoom_2 天前
Mac 移动硬盘不显示?2026整理汇总完整解决方案
stm32·单片机·macos
kingbal3 天前
MAC:chatgpt登陆报错签名异常
macos·chatgpt