Electron运行在Ubuntu17.10系统上中文乱码的解决

2017-11-01  本文已影响208人  路过麦田

最近更新了系统,由ubuntu16.04升级到了17.10,但是运行好好的App出现了问题,首先是Application Menu上右侧App图标不能显示,左侧App名称也出现了乱码(中文),Dock上的图标也显示不出来,并且鼠标放上去也显示乱码(中文),净给添乱,唉。

1. 图标不显示

Github上有人也反馈了Application Menu上图标不显示的BUG,https://github.com/electron/electron/issues/10887,采用该方案在虚拟机中时不管用的,但是在真机上可以,也是比较奇怪。

// 在代码中添加下列代码
if(process.env.XDG_CURRENT_DESKTOP == 'ubuntu:GNOME') {
    process.env.XDG_CURRENT_DESKTOP = 'Unity';
}

2. 中文标题显示乱码

在项目的package.json文件中有两个字段,nameproductName,在Ubuntu16.04上只要设置productName字段就可以,中文也可以正常显示,但是升级到Ubuntu17.10以后,该字段已经失效了,英文可以正常显示,但是中文显示的是乱码。

解决方案:

  1. 在package.json文件中删除productName字段
  2. 在用electron-packager打包时,添加--appname来指定App的名称

按照上面步骤修改完成之后,再次打包,启动,中文就不会乱码了,而且Dock上的图标也可以正常显示了。

上一篇下一篇

猜你喜欢

热点阅读