通过 Electron 托盘(tray)实现后台执⾏⻓任务tags: electron, node description: 通过 Electron 托盘(tray)实现后台执⾏⻓任务。 Electron 应⽤在执⾏⼀些⻓时间任务(⽐如上传、下载),我们想关闭界⾯后任务依旧执⾏。再次打开界⾯,依旧可以看到正在执⾏的任务以及任 务进度。托盘可以帮我们实现这个功能。 创建托盘和菜单示例 实例化 Tray 并传⼊图标路径; 创建菜单并配置到托盘中。 true }, { label: 'Item4', type: 'radio' } ]) tray.setContextMenu(contextMenu) }) 基于托盘功能实现后台运⾏应⽤ 关闭应⽤前唤醒对话框⼆次确认 关闭应⽤时,触发对话框,可⽀持 3 种场景: 点击「取消」取消关闭操作; 点击「退出」,「后台运⾏」选中时,界⾯关闭,托盘不关闭,任务继续执⾏; setImage(getTrayIcon())); 托盘其他场景 显示未读消息数 tray.setTitle('6') ; 有未读消息时图标闪动:通过 setImage 定时轮询切换图标实现 注意事项 MacOS 全屏退出界⾯是会出现⿊屏问题,解决⽅案 判断如果全屏,在关闭全屏时,先退出全屏再隐藏界⾯ // 修复全屏 hide ⿊屏问题 // https://github.0 码力 | 6 页 | 1.19 MB | 1 年前3
electron中文教程
ipcRenderer remote webFrame 在两种进程中都可用的模块 clipboard crashReporter nativeImage screen shell 开发 代码规范 源码目录结构 与 NW.js(原 node-webkit)在技术上的差异 构建系统概览 构建步骤(macOS) 构建步骤(Windows) 构建步骤(Linux) 在调试中使用 Symbol 就会以你的应用程序的方式启动。 electron 文件夹将被部署并可以分发给最终的使用者。 除了通过拷贝所有的资源文件来分发你的应用程序之外,你可以通过打包你的应用程序为一个 asar 库文件以避免暴 露你的源代码。 为了使用一个 asar 库文件代替 app 文件夹,你需要修改这个库文件的名字为 app.asar ,然后将其放到 Electron 的资源文件夹下,然后 Electron 改成任意你喜欢的名字。 通过修改产品名称并重编译源代码来更换 Electron 的名称也是可行的。你需要修改 atom.gyp 文件并彻底重编 译一次。 Windows macOS Linux 通过重编译源代码来更换名称 grunt打包脚本 分发应用 - 8 - 本文档使用 书栈(BookStack.CN) 构建 手动检查 Electron 代码并重编译是很复杂晦涩的,因此有一个Grunt任务可以自动的处理这些内容0 码力 | 203 页 | 2.72 MB | 1 年前3
跨平台桌⾯应⽤框架:ElectronLinux 系统下的应⽤ 架构 后端:挣钱养家 的 Node.js 负责:实现业务逻辑 注: Node.js 是 Javascript 的⼀个 Web Server 前端:貌美如花 的 Chromium 负责:显示内容 注:可以看成 Chromium 是 Chrome 的浏览器的内核实现 可把Electron看成 ⼀个被 JavaScript 控制的,精简版的 Chromium Objective-C / Swift + 框架: Cocoa 截图 额外特性 ⾃动更新 ⽀持平台 不⽀持 Linux ⽀持 Mac 和 Win 都是基于Squirrel去实现的 原⽣的菜单和通知 崩溃报告 调试和性能分析 Windows 安装程序 crifan.com,使⽤署名4.0国际(CC BY 4.0)协议发布 all right reserved,powered reserved,powered by Gitbook最后更 新: 2020-08-09 10:12:44 基本使⽤ 21 Electron打包和部署 ⽤Electron开发完桌⾯应⽤后,接着需要把代码打包在⼀起发布出来,叫做:打包 或 部署 或 发布 常⻅打包packaging⼯具 ⽬前主要有3种可以⽤来打包Electron应⽤的⼯具: electron-forge https://github0 码力 | 123 页 | 21.81 MB | 1 年前3
基于Electron vue的桌应用实战2TouchBar …… ⻚页⾯面代码与业务逻辑混写,功能重复 升级Electron框架,修改成本⼤大 Vue Component 业务逻辑 NodeAPI NativeAPI Vue Component 业务逻辑 NodeAPI NativeAPI bridge ✔ bad case good case 项⽬目实践 #2如何实现登录认证 Index Page http协议0 码力 | 34 页 | 3.47 MB | 1 年前3
共 4 条
- 1













