对于初学者来说,我构建的“普通”(非托盘)应用程序在电子打包器和以下命令中运行良好
npx electron-packager . --overwrite --plaorm=darwin --arch=x64 --icon=aicons/1024.icns --prune=true --out=release-builds我最近重构了我的代码,所以现在是一个托盘应用程序
所以我有
tray = new Tray('icons/elektro.png')
tray.setToolTip('elektro')这在npm start中工作得很好,但是当我使用电子打包程序构建.app时,我得到了这个错误:
Uncaught Exception:
TypeError: Error processing argument at index 0, conversion failure from icons/elektro.png
at App.<anonymous> (/Users/gurugeek/elektro/release-builds/elektro-darwin-x64/elektro.app/Contents/Resources/app/main.js:48:10)
at App.emit (events.js:205:15)我认为问题与托盘图标所使用的.png有关。如果我将其更改为.icns格式,它将不再与npm start一起工作。你知道怎么解决这个问题吗?
我用的是电子6
发布于 2019-10-22 08:32:31
好的,这个问题与路径有关。这看起来微不足道,但在大多数情况下,.app文件就会死掉,没有任何错误。这个问题的文档非常少,所以我把它留给发现同样问题的人:
const path = require('path');
var iconPath = path.join(__dirname, '/icons/elektro.png') // your png tray icon
let trayIcon = nativeImage.createFromPath(iconPath);
// if needed resize to 16x16 but mac also accepted the 24 icon
// trayIcon = trayIcon.resize({
// width: 16,
// height: 16
// });
tray = new Tray(trayIcon)https://stackoverflow.com/questions/58495184
复制相似问题