electron 2版本升级到4.0 5.0问题总结

2升级到electron新版3x的

    const isQuit = app.makeSingleInstance((argv, workingDirectory) => {
  需要替换为
    if(app.requestSingleInstanceLock) { // 兼容3.x以上electron版本
        const isQuit = app.requestSingleInstanceLock();

        if(!isQuit) {
            app.quit();
        } else {
            app.on('second-instance', (event, argv, workingDirectory) => {

还有就是node的集成环境,2以下默认开启,5以上默认关闭
所有需要明确设置

             webPreferences: {
                 devTools: false, //Whether to enable DevTools.
              // nodeIntegration: true, //是否完整的支持 node. 默认值为true.                       
             nodeIntegration: true, //是否完整的支持 node. 默认值为true.
webviewTag: true  // 解决webview无法显示问题

electron升级后的webview功能无法正常使用,如果采用iframe方式 需要注意渲染进程崩溃的问题,因为webview是独立的进程不会导致渲染进程崩溃

国产操作系统 龙芯打包
"loongson": "electron-packager ../electron/ xx --platform=linux --arch=mips64el --electron-version=1.8.8 --no-prune --out=../publish/electron --icon=./electron/frame/static/images/logo.png --overwrite",

中标麒麟国产化总结

  • 1、loongson芯片采用mips64el指令集,electron的--arch就需要匹配上,淘宝镜像上的https://npm.taobao.org/mirrors/electron/1.8.8/及百度云下载的4.0.6
  • 2、国产化的系统文件夹区分大小写,引入打包时需注意大小写
  • 3、进行某些特殊的md5签名时会导致渲染进程崩溃,需注意例如:YYIMChat.getSign(['222']) 0="222"&salt=6fee1d49ebc8c971158e7fc32a64d3d1
  • 4、linux环境下 暂不支持截图,截图会导致进程崩溃
  • 5、不支持视频会议功能,视频会议需要第三方的支持
  • 6、关于electron版本的问题3以上版本的创建窗口单例有变化,并且5以上版本默认node环境不开启(require无法使用问题)
  • 7、关于打开应用 公告等内部应用打开的站点会导致webview的独立进程崩溃显示为黑色,暂时linux下外部打开地址
  • 8、关于linux下安装包:使用rpmbuild在loongson环境下打包成rpm文件(暂时图标还无法显示),已经有git库。绿色包源文件需放在BUILD下,rpmbuild -bb uspace.spec -v 执行后生成在RPM文件夹下

你可能感兴趣的:(electron 2版本升级到4.0 5.0问题总结)