更新类型
复制一个包含安装步骤和本插件的完整 Markdown 指南的配置提示。
Capgo 支持多种远程更新类型。 本页面列出了并解释了所有它们,以便您可以选择适合您的应用程序的合适组合。
应用时间
标题:应用时间控件 当 更新下载后应用的时间。插件在应用程序切换到前台时检查更新,并在应用程序保持打开时重复使用定时器。 periodCheckDelay 控件调节此间隔(默认10分钟)。
| 类型 | 描述 | 使用场景 |
|---|---|---|
自动更新: atBackground | 检查和下载每次前台检查时,应用程序切换到后台时应用 | 大多数应用程序; 最小干扰 |
__CAPGO_KEEP_0__: atInstall | 立即应用仅在首次安装或原生应用商店更新后; 否则使用 atBackground | 新用户获取最新版本; 现有用户使用后台应用 |
__CAPGO_KEEP_0__: onLaunch | 在冷启动(杀死→前台)后立即应用; 然后切换到 atBackground | 新鲜度和会话稳定性之间的平衡 |
__CAPGO_KEEP_0__: always | 在每次前台转换时检查并立即应用更新 | 关键修复,具有简单状态的应用 |
__CAPGO_KEEP_0__: onlyDownload | 自动检查和下载,触发 updateAvailable,且不应自动应用 | 显示自己的更新提示或控制更新时机的应用 set() |
在 capacitor.config.ts:
plugins: { CapacitorUpdater: { autoUpdate: 'atBackground', // default; true is still accepted // or: 'off' | 'atInstall' | 'onLaunch' | 'always' | 'onlyDownload' }}延迟条件
标题:延迟条件必须满足的条件 前面, 安装更新时使用。 setMultiDelay 组合它们(所有条件必须满足)。
| 条件 | 描述 | 示例 |
|---|---|---|
| 日期 | 等待特定日期/时间之后 | 与服务器端发布协调 |
| 后台 | 等待应用程序后台最小持续时间(毫秒) | 避免在快速应用程序切换时应用 |
| 原生版本 | 要求最低的本机二进制版本 | 阻止不兼容的本机code更新 |
| kill | 等待下一个应用程序kill事件 | 仅在完全重启时应用 |
import { CapacitorUpdater } from '@capgo/capacitor-updater';
await CapacitorUpdater.setMultiDelay({ delayConditions: [ { kind: 'date', value: '2023-06-01T00:00:00.000Z' }, { kind: 'background', value: '60000' }, ],});控制哪些 semver更新 一个频道将自动分发的更新。通过 --disable-auto-update on频道设置。
| 策略 | 阻止 | 允许 | 用例 |
|---|---|---|---|
| context | 无 | Nothing | 任何目标包版本更新 |
| 重大 | 高于重大 version_build,例如 1.2.3 -> 2.0.0 | 同重大,例如 1.2.3 -> 1.9.0 或 1.2.3 -> 1.2.4 | Prevent breaking changes from reaching old native code |
| 次要 | 高于重大或次要 version_build,例如 1.2.3 -> 1.3.0 | 同重大和次要,例如 1.2.3 -> 1.2.4 | 在本机次要线内保持更新 |
| 补丁 | 任何主要、次要或补丁号变化,例如 1.0.0 -> 1.0.1 | 仅修改后缀而 MAJOR.MINOR.PATCH 保持相同,例如 1.0.0-beta.1 -> 1.0.0-beta.2 或 1.0.0+build.1 -> 1.0.0+build.2 | 例如 |
| 最严格模式:核心版本无变化 | 元数据 min_update_version缺失 version_build , 或 | 它以下 min_update_version 目标捆绑包,其 version_build | 版本号小于或等于 |
这些检查将目标捆绑包与发送的本机基线进行比较 version_build不是当前安装的下载的捆绑包 version_name.
npx @capgo/cli channel set production --disable-auto-update major更新类型
标题:更新类型如何 将 包
| 传输到设备。 | 类型 | 描述 |
|---|---|---|
| 何时使用 | 完整包 | 整个 JS 包下载 |
| 首次安装、较大变更或 delta unavailable 时 | Only changed files are downloaded | 最常见的更新;速度更快,带宽更友好 |
# Full bundle (default)npx @capgo/cli bundle upload --channel production
# Delta updatesnpx @capgo/cli bundle upload --channel production --delta以减少下载时间并改善用户体验。
快速参考| 类别 | 类型 |
|---|---|
| 应用时间 | off, atBackground, atInstall, onLaunch, always, onlyDownload |
| 延迟条件 | date, background, nativeVersion, kill |
| 版本阻塞 | none, major, minor, patch, metadata |
| 交付 | 全包,Delta(清单) |
相关
相关继续阅读更新类型
继续阅读关于更新类型如果您正在使用 更新类型 来规划实时更新的交付,连接它与 Capgo 实时更新 为Capgo Live Updates 的产品工作流程 概述 概述中的实现细节 功能 功能中的实现细节 更新行为 更新行为中的实现细节 开始使用 开始使用中的实现细节