通过 Electron 托盘(tray)实现后台执⾏⻓任务根据操作系统类型和系统 Mode 定制托盘图标 MacOS ⽀持 light、dark 两种 mode,根据 mode 展示不同的图标: nativeTheme.shouldUseDarkColors 可以判断系统 mode 切换系统 Mode 定制托盘图标改变 const getTrayIcon = () => path.resolve(__dirname, process.platform !== 显示未读消息数 tray.setTitle('6') ; 有未读消息时图标闪动:通过 setImage 定时轮询切换图标实现 注意事项 MacOS 全屏退出界⾯是会出现⿊屏问题,解决⽅案 判断如果全屏,在关闭全屏时,先退出全屏再隐藏界⾯ // 修复全屏 hide ⿊屏问题 // https://github.com/electron/electron/issues/20263 if (mainWindow0 码力 | 6 页 | 1.19 MB | 1 年前3
跨平台桌⾯应⽤框架:Electrons/app.asar.unpacked/ pymitmdumpstartdist pymitmdumpotherdist main.js 从⽽确保 main.js 运⾏期间去判断对应的PyInstaller打包后的python的⼆进制⽂件 xxx/builder_output/mac/mitmdumpUrlSaver.app/Contents/Resources/app curLineOutput curLineOutput == curProcess curProcess..stdout stdout..readline readline(()) 实现了:⾃动判断当前系统编码 electron-builder 62 Mac: UTF-8 Win: cp936 = GBK 实现 subprocess 的 readline 内部⾃动解码,⽽不会出现解码报错问题。 PORTABLE_EXECUTABLE_DIR let let initCwd initCwd == remote remote..process process..env env..INIT_CWD INIT_CWD 去判断是否是⽣产环境,以及获取到有效的app可执⾏⽂件所在⽬录了。 获取Electron的app的根⽬录 此处是 ⽂件: electron-python-example/main.js const0 码力 | 123 页 | 21.81 MB | 1 年前3
electron中文教程
spawn 允许 command 替代 file 作为输入,而 command 是需要在 shell 下执行 的,目前没有可靠的方法来判断 command 中是否在操作一个 asar 包中的文件,而且即便可以判断,我们依旧 无法保证可以在无任何副作用的情况下替换 command 中的文件路径。 如上所述,一些 Node API 会在调用时将文件解压到文件系0 码力 | 203 页 | 2.72 MB | 1 年前3
共 3 条
- 1













