C:\Users\[userName]\AppData\Local\[appName]-updater\pending
下载完成后会校验新版本安装文件哈希值是否与服务器上的安装文件的哈希值相同 。
任务栏快捷方式如果用户把应用程序的快捷方式固定到任务栏 , 这个快捷方式的存放路径为:
C:\Users\[userName]\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar
在一些特殊的情况下 , 我们可能要更新这个快捷方式的目标程序 , 比如用户先安装了 32 位的应用程序 , 又安装 64 位的应用程序 , 此时用户固定在任务栏的图标指向的目标程序路径就是错的了 。
Electron 为我们提供了读写快捷方式的 API:shell 模块下的 readShortcutLink
和 writeShortcutLink
, 开发者可以使用这两个 API 来更新任务栏上的快捷方式 。
Electron npm 包的特征Electron npm 包会被安装到工程的如下目录中:
yourSolutionDir\node_modules\electron
这个目录下 dist 子目录中存放着 Electron 的二进制文件 , 我们开发调试应用时 , 启动的就是下面这个应用程序:
yourSolutionDir\node_modules\electron\dist\electron.exe
这个包的导出文件是 index.js , 这个文件并没有什么特殊的逻辑 , 只是返回了上面 electron.exe 的路径 。如果你还记得我们在“如何开发 Vite3 插件构建 Electron 开发环境”章节中介绍的知识 , 我们就是通过require("electron")
获取 electron.exe 的路径的 , 如下代码所示:
let electronProcess = spawn(require("electron").toString(), [], {});
安装 Electron npm 包时 , npm 会在如下路径下载 Electron 的二进制资源:
https://github.com/electron/electron/releases/download/v20.1.3/electron-v20.1.3-win32-x64.zip
这个地址包含如下了三个部分:
- 镜像部分:https://github.com/electron/electron/releases/download/ 。
- 版本部分:v11.1.0/ 。
- 文件部分:electron-v11.1.0-win32-x64.zip 。
- 镜像部分的环境变量:ELECTRON_MIRROR 。
- 版本部分的环境变量:ELECTRON_CUSTOM_DIR 。
- 文件部分的环境变量:ELECTRON_CUSTOM_FILENAME 。
npm 会首先把下载到的 Electron 可执行文件及其二进制资源压缩包放置到如下目录中:
C:\Users\ADMINI~1\AppData\Local\Temp
文件下载完成后 , npm 会把它复制到缓存目录中以备下次使用 。默认的缓存目录为:C:\Users\[your os username]\AppData\Local\electron\Cache
开发者可以通过设置名为 electron_config_cache 的环境变量来自定义缓存目录 。知道了缓存目录的位置之后 , 开发者就可以先手动把 Electron 可执行文件及其二进制资源压缩包和哈希文件放置到相应的缓存目录中 。这样再通过 npm install 命令安装 Electron 依赖包时 , 就会先从你的缓存目录里获取相应的文件 , 而不是去网络上下载了 。这对于工作在无外网环境下的开发者来说 , 无疑是一种非常有价值的手段 。需要注意的是缓存目录子目录的命名方式是有要求的 , 如下所示:
//二进制包文件的路径[你的缓存目录]/httpsgithub.comelectronelectronreleasesdownloadv11.1.0electron-v11.1.0-win32-x64.zip/electron-v9.2.0-win32-x64.zip//哈希值文件的路径[你的缓存目录]/httpsgithub.comelectronelectronreleasesdownloadv11.1.0SHASUMS256.txt/SHASUMS256.txt
经验总结扩展阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- gta线上怎么加好友(gta怎么举报开挂)
- 表驱动法在STM32中的应用
- ios应用内支付是扣哪里的钱 苹果应用内支付扣的哪里的钱
- 自动化利器 Ansible - 从了解到应用
- 状态估计和KalmanFilter公式的推导与应用
- 京东云开发者|经典同态加密算法Paillier解读 - 原理、实现和应用
- Spring Boot 应用的热部署配置
- 图数据 3D 可视化在 Explorer 中的应用
- 线上kafka消息堆积,consumer掉线,怎么办?
- 大专计算机应用技术好就业 前景如何