需要更快的 应用程序更新 而无需等待应用商店延迟? Capgo 让您能够安全地实时向用户推送应用程序更新。跳过应用商店审查并轻松保持应用程序最新状态。
关键要点:
- 什么是Capgo? 一个开源平台,用于 Capacitor 应用程序的实时更新。
- 为什么 OTA 更新? 节省时间,改善用户体验,快速修复 bug。
- 如何开始?
- 安装 Capgo 插件:
npm install @capgo/capacitor-updater - 使用 API 密钥配置您的应用程序。
- 使用“生产”或“beta”等频道进行目标发布。
- 安装 Capgo 插件:
- 高级功能: 端到端加密、错误处理和 CI/CD 集成。
Capgo 的文档(capgo.app/docs)提供了从安装到高级配置的设置、安全性和故障排除的逐步指南。从安装到高级配置,它是您实现无缝更新的必备指南。
CapgoCapacitorJs

Using Capgo Documentation
Navigating documentation effectively is essential when working with OTA updates. Capgo’s documentation offers detailed guidance for integrating live updates into Capacitor apps.
实时更新
You can access Capgo’s documentation at capgo.app/docs [1]您可以在
| 实时更新 | 根据特定目的组织的部分 | 关键内容 |
|---|---|---|
| 开始使用 | 初始设置 | 安装步骤 API密钥设置 |
| 配置 | 核心设置 | 插件配置,环境设置 |
| API参考 | 技术细节 | 方法,参数,返回值 |
| 安全 | 保护措施 | 加密设置、签名验证 |
| 故障排除 | 问题解决 | 常见问题、诊断工具 |
重要术语和概念
以下是您将遇到的关键术语:
- 频道: 这些是用于控制版本分发的更新流。例如,您可以设置“生产”,“beta”和“测试”频道,以满足不同用户组的需求 [4].
- 更新策略: 这些定义了如何分发和应用更新。选项包括自动下载、安装时间和用户提示 [1].
- 应用程序状态监听器: 这些组件跟踪应用程序是否在前台或后台 [4].
- Bundles: 包含应用程序新版本的打包更新文件,包括资产、code更改和配置更新 [4].
Code 示例和教程
文档提供了简化集成的示例code。以下是使用TypeScript/JavaScript的基本示例:
import { CapacitorUpdater } from '@capgo/capacitor-updater'
// Initialize the updater
await CapacitorUpdater.notifyAppReady()
对于更复杂的用例,文档包括真实世界的示例 [2][3],例如:
- 切换通道进行A/B测试
- 自定义更新流程,包括用户提示
- 处理错误并实现回滚
- 将更新与CI/CD管道集成
每个教程都突出了性能考虑和安全方面,帮助您做出明智的决定。文档定期更新以包含最新功能和最佳实践 [1].
查看设置指南了解实现细节。
设置OTA更新
在Capgo中设置OTA更新,简化您的部署流程。按照这些步骤和提示进行配置,避免麻烦。
基本设置步骤
首先,在您的Capacitor项目中安装Capgo插件:
npm install @capgo/capacitor-updater
npx cap sync
接下来,更新您的 capacitor.config.json 文件,使用您的 Capgo API密钥:
{
"plugins": {
"CapacitorUpdater": {
"autoUpdate": true,
"apiKey": "YOUR_API_KEY_HERE"
}
}
}
然后,在您的应用程序的主文件中初始化更新器,以检测更新:
import { CapacitorUpdater } from '@capgo/capacitor-updater';
await CapacitorUpdater.notifyAppReady();
完成此项后,您可以设置通道来管理不同更新流程。
更新通道设置
组织您的 更新频道 以适应您的部署需求:
| 频道类型 | 目的 | 使用场景 |
|---|---|---|
| 生产 | 稳定版本 | 普通用户群 |
| 测试 | 预发布测试 | QA 团队和 beta 测试者 |
| Beta | 功能测试 | 早期采用者 |
要上传一个特定频道的更新,请使用 Capgo CLI:
npx @capgo/cli upload -c production
更新方法
Capgo 提供了两种主要方式来处理更新:
自动更新
通过在您的配置中设置 autoUpdate: true 来启用自动更新。这确保了更新在后台应用,无需开发者额外的努力。
手动更新 为了获得更多的控制,您可以手动管理更新。使用以下模式来检查并应用更新:
// Check for updates
const update = await CapacitorUpdater.download();
// Install when ready
if (update) {
await CapacitorUpdater.set(update);
}
对于关键更新,您可以在进行之前提示用户:
if (update.version > currentVersion) {
const userConsent = await showUpdatePrompt();
if (userConsent) {
await CapacitorUpdater.set(update);
}
}
You can also target specific user groups with custom IDs and channels:
await CapacitorUpdater.setCustomId('beta-tester-123');
await CapacitorUpdater.setChannel('beta');
最后,请确保包含错误处理和回滚选项:
try {
await CapacitorUpdater.set(update);
} catch (error) {
await CapacitorUpdater.reset(); // Revert to the last working version
console.error('Update failed:', error);
}
通过这些步骤,您的OTA更新系统已经准备就绪。探索高级设置以进一步自定义更新过程。
sbb-itb-f9944d2
高级设置
提高您的 Capgo OTA更新 设置安全措施和灵活的更新配置项。这些选项确保安全和平滑的更新体验,同时符合应用商店的指南。
安全功能
Capgo 提供强大的安全协议来保护您的更新包并安全地将它们传递给用户。该平台使用端到端加密和公钥密码学进行所有更新 [1]以下是如何启用关键安全功能的示例:
// Enable bundle verification
await CapacitorUpdater.setVerifyBundles(true);
// Configure encryption settings
await CapacitorUpdater.configure({
encryption: {
enabled: true,
failOnError: true
}
});
保护包的关键组件包括:
| 安全特性 | 描述 | 实现 |
|---|---|---|
| 捆绑完整性 | 通过加密签名验证包的真实性 | 通过调用setVerifyBundles()自动启用 |
| 回滚保护 | 在更新失败时恢复到稳定版本 | 在更新过程中内置 |
| 访问控制 | 通过角色权限管理更新 | 通过控制台配置 |
Update Behavior Settings
您可以通过使用事件监听器和配置选项来自定义更新的传递和安装方式。使用这些设置来调整更新的时间和用户交互:
// Listen for when an update is available
CapacitorUpdater.addListener('updateAvailable', async (info) => {
if (info.version > currentVersion) {
// Custom update logic based on app state
const isAppInactive = await checkAppState();
if (isAppInactive) {
await CapacitorUpdater.download();
}
}
});
// Monitor download completion
CapacitorUpdater.addListener('downloadComplete', (info) => {
console.log(`Update ${info.version} ready to install`);
// Implement custom installation timing if desired
});
对于分阶段发布,您可以直接通过控制台或使用 code:配置更新分发
// Set custom update conditions for a gradual rollout
await CapacitorUpdater.configure({
rollout: {
percentage: 25, // Start with 25% of users
timeInterval: 24 // Increase rollout percentage every 24 hours
}
});
要处理特定版本相关的行为:
// Handle version-specific update failures
CapacitorUpdater.addListener('updateFailed', async (info) => {
if (info.error.code === 'VERSION_MISMATCH') {
await CapacitorUpdater.reset(); // Revert to the last stable version
// Optionally, handle error notification here
}
});
这些设置确保更新可靠,同时允许您根据应用程序的需求来调整过程。始终在Capgo的测试环境中彻底测试更新,然后将其推送到生产环境 [2].
解决方案指南
Capgo的错误日志和内置工具有助于解决OTA更新挑战,同时保持应用程序与商店要求的兼容性
常见问题和解决方案
以下是典型问题和解决方法:
-
下载失败 症状: 下载器冻结或无法完成。 解决方案: 检查您的网络连接,确认更新 URL 是有效的,并添加重试机制来处理中断。
-
版本冲突 症状: 更新安装失败或导致应用程序不稳定。 解决方案: 使用清晰的版本号来避免冲突,并实现回滚选项以确保安全。
-
安装错误 症状: 更新失败或触发自动回滚。 解决方案: 确保您正确调用
notifyAppReady()防止回滚后更新
对于Android设备,更新大于50MB时,将其分割为更小的文件可以提高性能 [5].
使用详细的错误日志来捕捉问题。例如,实现此监听器:
CapacitorUpdater.addListener('updateFailed', (error) => {
console.log(`Update failed: ${error.code}`);
logUpdateError({
errorCode: error.code,
deviceInfo: error.device,
timestamp: new Date().toISOString()
});
});
通过结合错误日志和预检查,您可以在遵守法规之前有效地处理这些问题
App Store 规则
技术修复不足 - 您的更新还需要与应用商店指南保持一致
Apple App Store 要求:
- 用户透明度: 清楚地告知用户更新的内容并获得他们的同意
- 核心功能: 确保您的应用程序的主要功能保持完整并经过审查
- 安全措施: 使用安全的方法传输更新。
Android 实现:
await CapacitorUpdater.configure({
updateNotification: {
title: "Update Available",
message: "A new version is available. Please update to access the latest features.",
requireUserConsent: true
}
});
最佳实践:
- 版本控制: 分段发布更新以减少冲突。
- 更新通知: 提供清晰易用的更新提示。
- 安全: 验证包的完整性并使用加密保护数据。
概要
: 本节汇总了指南的主要思想。
Capgo 的文档提供了明确的指南,用于在 Capacitor 应用中集成 OTA 更新,同时遵守应用商店的规定。
使用Capgo的资源,开发者可以实现像 端到端加密 和 CI/CD集成,涵盖从初始设置到高级配置的所有内容 [1].
关键实现领域
| 方面 | 关键焦点 | 哪里可以找到 |
|---|---|---|
| 安全 | 加密和完整性检查 | 安全功能 section |
| 遵守性 | 满足苹果和安卓的要求 | App Store 规则 指南 |
| 更新管理 | 版本控制和回滚选项 | 更新方法 指南 |
| 错误处理 | 日志和故障排除步骤 | 解决方案指南 |
这些区域构成了Capgo的更新管理系统的骨干。
Capgo的CLI和分析工具简化了 应用程序整个生命周期中 更新管理 [1].
如果您需要进一步的支持,您可以浏览 API文档, 样例项目, 社区论坛 [2].
继续阅读《Capgo文档:如何使用Capgo进行OTA更新》
如果您正在使用 《Capgo文档:如何使用Capgo进行OTA更新》 为安全和合规性规划,连接它 加密 加密的实现细节 合规 合规的实现细节 Capgo 安全扫描器 Capgo 安全扫描器的产品工作流程 Capgo 安全 Capgo 安全的产品工作流程 Capgo 信任中心 Capgo 信任中心的产品工作流程