北冰洋以北 发表于 2024-6-14 22:45:35

如何用 Electron 打包chatgpt-plus.top并天生mac客户端

如何用 Electron 打包chatgpt-plus.top并天生 DMG:一步步搞定!

嘿,各位开发者朋侪们!你有没有碰到过这样的问题?你辛辛苦苦开发了一个超酷的 Electron 应用,想要打包成 macOS 的 DMG 文件,结果碰到各种神秘的错误提示?不用担心,我也是从这个坑里爬出来的!本日我就带你用幽默的方式,一步步搞定这个难题。
预备工作:Node.js 和 npm

首先,我们需要安装 Node.js 和 npm(Node 的包管理工具)。你可以从 Node.js 官方网站下载并安装它们。安装完毕后,打开下令行,输入以下下令来检查安装是否成功:
node -v
npm -v
看到版本号了吗?太棒了,你已经迈出了第一步!
国内镜像加速下载

我们知道,国内的网络情况偶然会让人抓狂。因此,我们推荐利用淘宝的 npm 镜像来加速下载。输入以下下令切换 npm 源:
npm config set registry https://registry.npmmirror.com/
假如你是个工具控,还可以安装 nrm(npm registry manager)来轻松管理多个镜像源:
npm install -g nrm
nrm use taobao
初始化你的 Electron 项目

创建一个新的项目文件夹并初始化 npm 项目:
mkdir my-electron-app
cd my-electron-app
npm init -y
安装 Electron:
npm install electron --save-dev
创建你的 Electron 应用

现在,我们要创建一个简单的 Electron 应用。创建一个名为 main.js 的文件,并填入以下内容:
const { app, BrowserWindow } = require('electron');
const path = require('path');

function createWindow() {
const mainWindow = new BrowserWindow({
    width: 800,
    height: 600,
    icon: path.join(__dirname, 'icon.ico'), // 指定图标文件路径
    webPreferences: {
      preload: path.join(__dirname, 'preload.js')
    }
});

mainWindow.loadURL('https://chatgpt-plus.top'); // 加载 ChatGPT Plus 网站
}

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

app.on('activate', () => {
    if (BrowserWindow.getAllWindows().length === 0) createWindow();
});
});

app.on('window-all-closed', () => {
if (process.platform !== 'darwin') app.quit();
});
接着,打开 package.json 文件,确保内里包罗以下内容:
"main": "main.js",
"scripts": {
"start": "electron ."
}
运行你的 Electron 应用

我们来试试运行你的应用,看看它的神奇之处:
npm start
https://img-blog.csdnimg.cn/img_convert/df747e407762a3569be068233423d4cc.png
打包你的 Electron 应用

首先,用下面这条神奇的下令打包你的应用:
npx electron-packager . my-electron-app --platform=darwin --arch=x64 --icon=icon.icns --out=dist --overwrite
假如一切顺遂,你会在 dist 目次下看到一个名为 my-electron-app-darwin-x64 的文件夹,内里有一个 .app 文件。没错,这就是你闪亮登场的应用启动程序!
https://img-blog.csdnimg.cn/img_convert/4d2ec2a7b3e8b51931e62bf90c32e5d8.png
处置处罚网络超时问题

当然了,事情总不会那么顺遂。假如你看到一个雷同这样的错误信息:
connect ETIMEDOUT 185.199.109.133:443
别急,别急!这是网络超时问题,可以用以下几招来办理:

[*] 检查你的网络毗连:确保你能愉快地刷网页。
[*] 重试下令:偶然候,命运只是在考验你的耐烦。
[*] 换个网络:假如可以,试试隔壁邻居家的 Wi-Fi(开顽笑啦,用自己的网络哈)。
[*] 配置署理:假如你在公司防火墙后面,记得设置署理:
export HTTP_PROXY=http://你的代理服务器:端口
export HTTPS_PROXY=http://你的代理服务器:端口

[*] 增长超时时间:给你的下令多一点时间思索人生:
export ELECTRON_GET_TIMEOUT=100000

[*] 检查防火墙设置:确保防火墙没有在背后搞小动作。
[*] 更新工具:偶然候老版本的软件就是不听话,更新一下 npm 和 electron-packager 吧:
npm install -g npm
npm install -g electron-packager

[*] 手动下载:假如全部方法都不可,手动下载 Electron 的二进制文件并放到精确的目次中。
将 .app 文件打包成 DMG

恭喜你!假如你已经看到那个熟悉的 .app 文件,现在只需要再来点小邪术,就能天生一个漂亮的 DMG 文件了。首先,安装 electron-installer-dmg:
npm install -g electron-installer-dmg
然后,用下面这条下令进行打包:
electron-installer-dmg dist/my-electron-app-darwin-x64/my-electron-app.app my-electron-app
几秒钟之后,你会看到一个 my-electron-app.dmg 文件,拿去分发给你的 macOS 用户吧!
末了

搞定!现在你不但成功地打包了你的 Electron 应用,还可以自豪地跟朋侪们吹嘘你在技能上的突破。希望这篇幽默的小教程能帮你顺遂度过这个坑。祝你开发愉快,bug 少少!
假如碰到任何问题,接待留言,我们一起哈哈大笑,共同办理!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 如何用 Electron 打包chatgpt-plus.top并天生mac客户端