无需 Live Updates 测试 Native Build
复制包含安装步骤和该插件完整 Markdown 指南的配置 prompt。
测试新的原生二进制文件时,请确保它从该二进制文件内置的 Web 资源启动,而不是从之前下载的 live update 启动。使用以下一项防护措施,或组合使用。
1. 提升 Native Baseline 版本
标题为“1. 提升原生基线版本”的章节设置 CapacitorUpdater.version 从用于原生发布的版本开始,每次原生构建都递增。较新的原生基线会让已安装的二进制文件与旧 bundle 区分开,并且,在默认情况下 resetWhenUpdate: true,安装较新的原生应用时,会移除已下载的 bundle。
import type { CapacitorConfig } from '@capacitor/cli';import pkg from './package.json';
const config: CapacitorConfig = { plugins: { CapacitorUpdater: { // Keep this aligned with, and increase it for, every native build. version: pkg.version, autoUpdate: 'atBackground', }, },};
export default config;例如,使用以下版本构建的二进制文件: version: '1.4.1' 具有比现有版本更高的原生基线 1.4.0 bundle。如需验证打包资源,请勿复用原生版本。
2. 在控制台中阻止模拟器和开发版 Build 的更新
标题为“2. 在控制台中阻止模拟器和开发构建的更新”的章节在 Capgo 控制台中打开您的应用,前往 通道,选择该构建使用的 channel,并打开 信息 选项卡。开启 关闭 两者 允许开发构建 以及 允许模拟器.

此频道策略仅阻止向选定的构建类型推送更新。根据频道的其他设置,生产签名真机仍可能接收更新。
3. 仅在 Native CI 构建中启用 Live Update
标题为“3. 仅在 Native CI 构建中启用 Live Update”的章节对于希望本地、模拟器和开发者构建默认安全的团队,请通过环境变量使 Live Update 成为可选功能。以下配置在以下情况未满足时禁用更新检查: CAPGO_LIVE_UPDATES 完全等于 true:
import type { CapacitorConfig } from '@capacitor/cli';import pkg from './package.json';
const liveUpdatesEnabled = process.env.CAPGO_LIVE_UPDATES === 'true';
const config: CapacitorConfig = { appId: 'com.example.app', appName: 'Example App', plugins: { CapacitorUpdater: { // Bump package.json for every native build. version: pkg.version, // Local builds are off; native CI explicitly enables live updates. autoUpdate: liveUpdatesEnabled ? 'atBackground' : false, }, },};
export default config;仅在同步并构建原生应用的 CI 步骤中设置该变量:
- run: CAPGO_LIVE_UPDATES=true npx cap sync- run: ./build-native-app.sh运行 npx cap sync 设置变量后,因为 Capacitor 会在同步期间将此配置复制到原生项目中。如果没有该变量,本地构建和模拟器构建将保持 autoUpdate: false ,并且不会检查 Live Update。
快速检查清单
标题为“快速检查清单”的章节- 增加由
CapacitorUpdater.version用于原生二进制的版本。 - 禁用 允许开发构建 以及 允许模拟器 在测试这些构建类型时,允许其访问该 channel。
- 本地构建,无需
CAPGO_LIVE_UPDATES. - 设置
CAPGO_LIVE_UPDATES=true仅在...之前npx cap sync在应接收 Live Update 的原生 CI 任务中。