[RFC] 105 - 桌面端自动更新模块 #7324
arvinxx
started this conversation in
RFC | 特性开发
Replies: 1 comment 1 reply
-
话说以后桌面端和Web端bug修补和新功能推送会保持一致吗? |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
背景
本 RFC 提案旨在为我们的桌面端应用添加自动更新功能,参考 Follow RSS 阅读器 的实现方式。我们将使用 electron-updater 库实现完整的自动更新流程,并设计双层更新机制(全量应用更新和渲染层热更新)以提高更新效率和用户体验。
设计目标
技术实现
1. 核心更新模块架构
创建一个专门的更新管理模块
UpdaterManager
,负责处理自动更新相关的所有逻辑:2. 更新流程设计
2.1 更新初始化
在应用启动时初始化更新管理器:
2.2 更新配置
创建更新配置文件:
2.3 更新管理器实现
3. 渲染层热更新实现
4. 更新辅助函数
5. IPC 服务实现
6. 渲染进程更新 UI 组件
在渲染进程中,需要创建更新通知和进度展示组件。
发布和构建配置
需要更新 electron-builder 配置文件,添加自动更新相关设置:
渲染层热更新的实现
为了支持渲染层热更新,我们需要在构建流程中生成渲染层资源包和 manifest 文件:
实施计划
阶段一:基础更新功能
阶段二:渲染层热更新
阶段三:测试和优化
Beta Was this translation helpful? Give feedback.
All reactions