docs: 优化客户端文档入口和部署说明
This commit is contained in:
@@ -1,24 +1,46 @@
|
||||
客户端文档入口
|
||||
==============
|
||||
|
||||
本目录用于保存 update-client 客户端子仓库的说明文档。
|
||||
你第一次打开 update-client/Docs 时,先看这一份。这里告诉你每份文档是干什么的,以及不同角色应该从哪里开始。
|
||||
|
||||
建议阅读顺序:
|
||||
文档阅读顺序
|
||||
============
|
||||
|
||||
1. 客户端部署说明.md
|
||||
面向接入和部署,说明 SDK 是什么、怎么放到业务软件目录、app_config.json 怎么填、如何打包。
|
||||
1. 01-客户端接入打包部署指南.md
|
||||
适合 SDK 接入方、测试人员和交付人员。按“生成 SDK -> 放进业务软件 -> 生成配置 -> 联调 -> 打最终包”的顺序写。
|
||||
|
||||
2. 第三方依赖说明.md
|
||||
面向编译环境,说明 Windows/Linux 下 Qt、OpenSSL、thirdparty/ 和 CMake 环境变量怎么配置。
|
||||
2. 02-编译环境和第三方依赖说明.md
|
||||
适合需要编译 Launcher、Updater、Bootstrap 的人。说明 Windows/Linux 下 Qt、OpenSSL、thirdparty/ 和 CMake 怎么准备。
|
||||
|
||||
3. ../i18n/ReadMe.txt
|
||||
面向国际化维护,说明新增 tr() 文案后如何更新 .ts、生成 .qm,以及 .qrc 如何内嵌翻译资源。
|
||||
适合维护界面文案的人。说明新增 tr() 后怎么更新 .ts、生成 .qm,并把翻译文件打进 qrc。
|
||||
|
||||
4. 本 ReadMe.txt
|
||||
记录客户端配置文件和打包脚本的简要说明。
|
||||
常用任务入口
|
||||
============
|
||||
|
||||
如果你只是拿到 SDK 接入业务软件:
|
||||
|
||||
客户端配置说明
|
||||
```text
|
||||
读 01-客户端接入打包部署指南.md 的“三、你:把 SDK 放进业务软件目录”和“四、你:生成并填写 app_config.json”。
|
||||
```
|
||||
|
||||
如果你要重新打 Windows SDK 包:
|
||||
|
||||
```powershell
|
||||
cd update-client
|
||||
.\scripts\package-sdk.ps1 -SourceDir .\out\bin -OutputDir .\dist\UpdateClientSDK -ZipFile .\dist\UpdateClientSDK.zip -SdkVersion 0.1.0
|
||||
```
|
||||
|
||||
如果你要重新打 Linux SDK 包:
|
||||
|
||||
```bash
|
||||
cd update-client
|
||||
cmake --preset linux-x64-release
|
||||
cmake --build --preset linux-x64-release
|
||||
bash ./scripts/package-sdk.sh --source-dir ./out/linux/bin --output-dir ./dist/UpdateClientSDK-linux --archive ./dist/UpdateClientSDK-linux.tar.gz --sdk-version 0.1.0
|
||||
```
|
||||
|
||||
客户端配置速记
|
||||
==============
|
||||
|
||||
config/app_config.json 是部署配置源文件。Launcher / Updater / MainApp 启动时会把它同步到当前用户的 QSettings 配置区;Windows 下对应注册表,Linux 下对应用户配置文件。后续运行配置优先从 QSettings 读取。
|
||||
@@ -1,17 +1,28 @@
|
||||
# UpdateClientSDK 客户端部署说明
|
||||
# UpdateClientSDK 客户端接入、打包和部署指南
|
||||
|
||||
本文按“维护者打包 SDK -> 你接入业务软件 -> 联调测试 -> 生成最终客户端包”的顺序说明。你拿到这份文档后,按章节一步一步做即可。
|
||||
|
||||
## 先看这里:你要做哪件事
|
||||
|
||||
| 你的目标 | 直接看哪一节 |
|
||||
| --- | --- |
|
||||
| 重新生成给别人用的 SDK 包 | 二、维护者:生成 SDK 包 |
|
||||
| 把 SDK 放到 SimCAE 或其他业务软件目录 | 三、你:把 SDK 放进业务软件目录 |
|
||||
| 从后台生成 `app_config.json` | 四、你:生成并填写 app_config.json |
|
||||
| 给业务主程序接入启动保护代码 | 五、你:业务主程序接入要求 |
|
||||
| 验证升级、回滚、健康检查 | 六、你:联调测试 |
|
||||
| 生成最终交付给用户的客户端包 | 七、维护者:生成最终客户端包 |
|
||||
|
||||
## 一、这个 SDK 是什么
|
||||
|
||||
UpdateClientSDK 是“独立更新器 SDK / 升级运行时 SDK”。它不是传统的 `include + lib` 形态,而是把自动升级能力做成一组独立程序,让业务软件通过这些程序完成检查更新、下载、安装、回滚和启动保护。
|
||||
|
||||
SDK 核心程序:
|
||||
|
||||
- `Launcher.exe`:用户入口。检查版本、验证授权和策略,决定直接启动业务主程序或进入升级流程。
|
||||
- `Updater.exe`:下载、校验、备份、安装、健康确认、提交或回滚。
|
||||
- `Bootstrap.exe`:处理运行中可能被占用的 EXE/DLL 替换。
|
||||
- `config/app_config.json`:部署配置源文件。启动时会同步到当前 Windows 用户的注册表,运行时优先读注册表。
|
||||
- `Launcher.exe` / `Launcher`:用户入口。检查版本、验证授权和策略,决定直接启动业务主程序或进入升级流程。
|
||||
- `Updater.exe` / `Updater`:下载、校验、备份、安装、健康确认、提交或回滚。
|
||||
- `Bootstrap.exe` / `Bootstrap`:处理运行中可能被占用的 EXE/DLL 或 Linux 可执行文件替换。
|
||||
- `config/app_config.json`:部署配置源文件。启动时会同步到当前用户的 QSettings 配置区;Windows 下对应注册表,Linux 下对应用户配置文件。
|
||||
- `config/manifest_public_key.pem`:Manifest 签名公钥,用来验证服务端发布包没有被篡改。
|
||||
|
||||
## 二、维护者:生成 SDK 包
|
||||
@@ -1,4 +1,4 @@
|
||||
# 第三方依赖说明
|
||||
# 客户端编译环境和第三方依赖说明
|
||||
|
||||
`thirdparty/` 是本机依赖目录,已经被 `.gitignore` 忽略,不会提交到 Git。
|
||||
|
||||
@@ -9,6 +9,12 @@
|
||||
|
||||
Windows 下推荐使用 Qt 5.15.2 msvc2019_64 和 OpenSSL-Win64;Linux 下使用系统安装的 Qt/OpenSSL 开发包。
|
||||
|
||||
先看结论:
|
||||
|
||||
- Windows:配置 Qt 环境变量,把 OpenSSL 复制到 `thirdparty/OpenSSL-Win64`。
|
||||
- Linux:用 apt 安装 Qt/OpenSSL 开发包。
|
||||
- `thirdparty/` 只放本机依赖,不提交 Git。
|
||||
|
||||
## 1. Qt 配置
|
||||
|
||||
### Windows
|
||||
Reference in New Issue
Block a user