问题描述
Electron Tray 图标在使用 Electron 13.1.2 的 Ubuntu 20.04 上未正确显示。
图标应该是下面设置的图像:
function createTray() {
const icon = path.join(process.resourcesPath,'assets/favicon.png');
tray = new Tray(nativeImage.createFromPath(icon));
const contextMenu = Menu.buildFromTemplate([
{
label: 'Show',click: () => {
createWindow();
},},{
label: 'Quit',click: () => {
app.quit();
},]);
tray.setContextMenu(contextMenu);
tray.setToolTip('Desktop Client');
tray.setTitle('Desktop Client');
showNotification();
}
但它显示的是一个紫色图标: screenshot
我对应用程序图标和通知图标使用了相同的路径并且它起作用了(蓝色原子图标): app icon notification icon
它在 Windows 托盘上也运行良好,但我不知道为什么它在 Ubuntu 上不起作用。
这是项目文件夹 image in folder
中的图像我尝试更改图像分辨率(16x16、32x32、64x64、256x256),但没有任何反应。
解决方法
如果你给出dist文件夹的图片路径,它就会完美运行,
var tray = new Tray(path.join(__dirname,'dist/assets/logo.png'))