跳过内容

更新类型

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

控制 更新下载后应用

类型描述使用场景
默认在后台下载,应用程序后台或被杀死时应用大多数应用程序;最小的中断
directUpdate: atInstall仅在新用户安装或应用商店更新时立即应用新用户获取最新版本;已有用户使用默认流程
directUpdate: onLaunch在安装、应用商店更新或应用程序杀死后立即应用新鲜度和会话稳定性之间的平衡
直接更新: always下载更新时立即应用(包括恢复时)关键修复,状态简单的应用

capacitor.config.ts:

plugins: {
CapacitorUpdater: {
directUpdate: false, // default
// or: 'atInstall' | 'onLaunch' | 'always'
}
}

必须满足的条件 在安装更新之前使用 在安装更新之前等待 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 在频道上设置。

策略阻止允许用例
没有所有更新默认; 全自动更新
__CAPGO_KEEP_0__0.0.0 → 1.0.0同主版本 (例如 1.x → 1.y)防止破坏性更改到达旧本机
__CAPGO_KEEP_0__0.0.0 → 1.1.0, 1.1.0 → 1.2.0同次要版本 (例如 1.2.x → 1.2.y)在主版本中更严格的控制
__CAPGO_KEEP_0__除了补丁版本外的任何更改仅 0.0.311 → 0.0.314非常严格; 补丁版本更新
元数据Updates without min_update_versionUpdates with explicit compatibility metadata根据包定制的兼容性规则
终端窗口
npx @capgo/cli channel set production --disable-auto-update major

送货类型

送货类型

Capgo如何 将捆绑包传输到设备。 类型

描述何时使用完整捆绑包
下载整个JS捆绑包第一次安装、较大更改或当delta不可用时__CAPGO_KEEP_0__
Delta (manifest)只下载更改的文件最多更新; 更快、更节省带宽
终端窗口
# Full bundle (default)
npx @capgo/cli bundle upload --channel production
# Delta updates
npx @capgo/cli bundle upload --channel production --delta

快速参考

快速参考
类别类型
应用延迟默认 atInstall, onLaunch, always
延迟条件date, background, nativeVersion, kill
版本阻塞none, major, minor, patch, metadata
交付完整包,Delta(清单)
相关