跳过内容

更新类型

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频道设置。

策略阻止允许用例
contextNothing任何目标包版本更新
重大高于重大 version_build,例如 1.2.3 -> 2.0.0同重大,例如 1.2.3 -> 1.9.01.2.3 -> 1.2.4Prevent 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.21.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 updates
npx @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 的产品工作流程 概述 概述中的实现细节 功能 功能中的实现细节 更新行为 更新行为中的实现细节 开始使用 开始使用中的实现细节