跳过内容

更新类型

Capgo 支持多种远程更新(OTA)。本页面列出并解释所有类型的更新,以便您可以选择适合应用程序的合适 combination.

控制 当更新下载后应用时 该插件在应用切换到前台时检查更新,并在应用保持打开时以重复定时器的方式进行检查 periodCheckDelay 控制该间隔(默认10分钟)。

类型描述用例
autoUpdate: atBackground在应用切换到前台时检查并下载,应用切换到后台时应用大多数应用;最小的干扰
autoUpdate: atInstall在新安装或原生应用商店更新后立即应用; 否则使用 atBackground新用户使用最新版本; 已经存在的用户使用后台应用
autoUpdate: onLaunch在冷启动时立即应用 (杀死 → 前台); 然后切换到 atBackground新鲜度和会话稳定性之间的平衡
autoUpdate: always在每次前台转换时检查并立即应用更新关键修复, 简单状态的应用
autoUpdate: onlyDownload检查并下载自动, 发出 updateAvailable, 并且永远不自动应用控制更新提示或在调用时完全控制的应用 set()

配置在 capacitor.config.ts:

plugins: {
CapacitorUpdater: {
autoUpdate: 'atBackground', // default; true is still accepted
// or: 'off' | 'atInstall' | 'onLaunch' | 'always' | 'onlyDownload'
}
}

必须满足的条件 更新安装之前。使用 setMultiDelay 组合它们(所有条件都必须满足)。

条件描述示例
日期等待特定日期/时间后与服务器端发布协调
背景等待应用程序背景化后 (ms) 的最小持续时间避免在快速应用程序切换期间应用
原生版本要求原生二进制文件的最低版本阻止在不兼容的原生 code 上更新
等待下一个应用程序杀死事件等待下一个应用程序杀死事件仅在全局重启时应用
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 在通道上

策略允许用例
Nothing任何目标包版本默认; 全自动更新
重大重大大于 version_build例如 1.2.3 -> 2.0.0同大版本,例如 1.2.3 -> 1.9.01.2.3 -> 1.2.4防止旧本地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自定义兼容性规则每包裹

这些检查将目标包裹与作为native baseline发送的原生基线进行比较,而不是作为 version_build当前安装下载的包裹发送的包裹 version_name.

终端窗口
npx @capgo/cli channel set production --disable-auto-update major

如何 bundle被传输到设备中。 类型

描述何时使用完整bundle
整个JS bundle被下载第一次安装、较大变化或delta不可用时delta (清单)
仅下载更改的文件大多数更新;更快、更节省带宽的方式.__CAPGO_KEEP_0__
终端窗口
# Full bundle (default)
npx @capgo/cli bundle upload --channel production
# Delta updates
npx @capgo/cli bundle upload --channel production --delta

标题为“快速参考”的部分

类别
__CAPGO_KEEP_0__类型
应用时延off, atBackground, atInstall, onLaunch, always, onlyDownload
延迟条件date, background, nativeVersion, kill
版本阻塞none, major, minor, patch, metadata
交付完整包, Delta (清单)

Keep going from Update Types

《Keep going from Update Types》

如果您正在使用 Update Types 来规划实时更新的交付,请将其与 Capgo 实时更新 集成到Capgo 实时更新中, 概览 概述中的实现细节 功能 功能中的实现细节 更新行为 更新行为中的实现细节 开始使用 开始使用中的实现细节