__CAPGO_KEEP_0__ 首页

How to Use Capgo Documentation for OTA Updates

Learn how to implement secure Over-the-Air updates in your Capacitor apps with Capgo's comprehensive documentation and step-by-step guidance.

How to Use Capgo Documentation for OTA Updates

需要更快的 应用程序更新 而不受应用商店延迟? Capgo 让您能够即刻向您的用户安全地传递应用程序的即时更新。跳过应用商店的审核,并轻松地保持应用程序的最新状态。

关键点:

  • 什么是 Capgo? 一个开源的 Capacitor 应用程序。
  • 为什么需要即时更新? 节省时间、改善用户体验并快速修复bug。
  • 如何开始?
    • 安装 Capgo 插件: npm install @capgo/capacitor-updater
    • 使用 API 密钥配置您的应用。
    • 使用“生产”或“beta”频道进行目标发布。
  • 高级功能: 端到端加密、错误处理和 CI/CD 集成。

Capgo 文档(capgo.app/docs)提供了从安装到高级配置的详细指南,帮助您实现无缝更新。

CapgoCapacitorJs 的实时更新插件

Capgo 实时更新控制台界面

使用 Capgo 文档

在使用 OTA 更新时,有效地浏览文档至关重要。Capgo 文档提供了详细的指南,帮助您将实时更新集成到 Capacitor 应用中。

找到文档的位置

您可以访问 Capgo 文档在 capgo.app/docs [1]. 文档根据特定目的组织成各个部分:

节 目的 关键话题
开始使用 首次设置 安装步骤 API密钥设置
配置 核心设置 插件配置、环境设置
API参考 技术细节 方法、参数、返回值
安全性 保护措施 加密设置、签名验证
故障排除 问题解决 常见问题、诊断工具

重要术语和概念

以下是您将遇到的关键术语:

  • 渠道这些是用于控制版本分发的更新流。例如,您可以设置“生产”、“beta”和“测试”渠道,以满足不同用户组的需求 [4].
  • 更新策略这些定义了如何分发和应用更新。选项包括自动下载、安装时间和用户提示 [1].
  • 应用状态监听器这些组件跟踪应用程序是否在前台或后台 [4].
  • 捆绑包: 包含您的应用程序新版本的打包更新文件,包括资产、code 更改和配置更新 [4].

Code 示例和教程

文档提供了示例code 来简化集成。以下是使用 TypeScript/JavaScript 的基本示例:

import { CapacitorUpdater } from '@capgo/capacitor-updater'

// Initialize the updater
await CapacitorUpdater.notifyAppReady()

对于更高级的用例,文档包括现实世界的示例 [2][3],例如:

  • 切换通道进行 A/B 测试
  • 自定义更新流程,包括用户提示
  • 处理错误并实现回滚
  • 将更新与 CI/CD pipeline 集成

每个教程都突出了性能考虑和安全方面,帮助您做出明智的决定。文档定期更新,以包含最新功能和最佳实践 [1].

对于实现详细信息,请参阅下一个设置指南。

设置 OTA 更新

为OTA更新在Capgo中设置流程,简化您的部署过程。遵循这些步骤和提示,配置OTA更新将变得更加容易。

基本设置步骤

首先,在您的Capacitor项目中安装Capgo插件:

npm install @capgo/capacitor-updater
npx cap sync

接下来,更新文件中的 capacitor.config.json 文件 Capgo API key:

{
  "plugins": {
    "CapacitorUpdater": {
      "autoUpdate": true,
      "apiKey": "YOUR_API_KEY_HERE"
    }
  }
}

__CAPGO_KEEP_1__

import { CapacitorUpdater } from '@capgo/capacitor-updater';
await CapacitorUpdater.notifyAppReady();

然后,在您的应用程序的主文件中初始化更新器,以检测更新:

完成此项后,您可以设置通道来管理不同的更新流:

更新通道设置 根据您的部署需求组织您的 更新通道

频道类型 目的 使用场景
生产 稳定版本 普通用户群
测试 QA团队和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);
  }
}

您还可以针对特定用户组使用自定义ID和频道:

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更新 设置。这些选项确保了安全和smooth的更新体验,同时满足了应用商店的指南。

安全功能

Capgo 提供强大的安全协议来保护您的更新包并安全地将它们传递给用户。该平台使用端到端加密和公钥密码学来处理所有更新 [1]。以下是如何启用关键安全功能的说明:

// Enable bundle verification
await CapacitorUpdater.setVerifyBundles(true);

// Configure encryption settings
await CapacitorUpdater.configure({
  encryption: {
    enabled: true,
    failOnError: true
  }
});

更新包保护系统的关键组成部分包括:

安全功能 描述 实现
包集完整性 通过加密签名验证包的真实性 通过调用setVerifyBundles()自动启用
回滚保护 如果更新失败则回滚到稳定版本 回滚保护已内置于更新过程中
访问控制 通过角色权限管理更新 配置方式:通过控制台

更新行为设置

通过事件监听器和配置选项来定制更新的传递和安装方式。您可以使用这些设置来调整更新的时间和用户交互:

// 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() 以防止回滚。

对于大于50MB的更新,分割它们为更小的文件可以在Android设备上提高性能 [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 要求:

  • 用户透明度: 清晰地告知用户更新的内容并获得他们的同意。
  • 核心功能: 确保您的应用程序的主要功能保持不变并经过审查。
  • 安全措施: 使用安全的方法传输更新。

安卓实现:

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].

关键实施领域

方面 重点 哪里可以找到
安全 加密和完整性检查 安全功能 部分
合规 满足苹果和安卓的需求 App Store 规则 指南
更新管理 版本控制和回滚选项 更新方法 指南
错误处理 日志和故障排除步骤 问题解决指南

这些区域构成了Capgo的更新管理系统的骨架。

Capgo的CLI和分析工具简化 管理更新 在整个应用程序生命周期中 [1].

对于进一步的支持,您可以探索以下资源 API 文档, 示例项目, 和 社区论坛 [2].

继续阅读如何使用Capgo文档进行OTA更新

如果您正在使用 如何使用Capgo文档进行OTA更新 来规划安全性和合规性,连接它 加密 为 __CAPGO_KEEP_0__ 加密实现细节 遵从性 为 __CAPGO_KEEP_0__ 加密实现细节 Capgo 安全扫描器 为 Capgo 安全扫描器产品工作流 Capgo 安全 为 Capgo 安全产品工作流 Capgo 信任中心 为 Capgo 信任中心产品工作流

为 Capacitor 应用实时更新

When a web-layer bug is live, ship the fix through Capgo instead of waiting days for app store approval. Users get the update in the background while native changes stay in the normal review path.

来自马丁的专业支持

立即开始

最新博客

Capgo为您提供创建真正专业的移动应用所需的最佳见解。