回滚管理对于修复 应用程序更新 会导致崩溃或错误。使用 Capgo快速恢复 Capgo 自动更新
- :无需手动干预 - __CAPGO_KEEP_0__ 将更新和回滚处理得无缝。安全流程
- :端到端加密确保安全更新。: No manual intervention needed - Capgo handles updates and rollbacks seamlessly.
- __CAPGO_KEEP_0____CAPGO_KEEP_0__
- 简化回滚管理:快速安装
@capgo/capacitor-updater在几分钟内安装包并配置您的应用。 - 更新频道控制更新,包括开发、测试和生产环境。
- 手动和自动回滚根据您的需求选择手动或自动恢复。
快速设置步骤:
- 安装
@capgo/capacitor-updater同步您的项目。 - 配置
capacitor.config.json更新 - 设置更新频道(开发、测试和生产)
- 测试回滚功能在生产部署之前。
Capgo 确保您的应用程序始终稳定和友好,立即解决问题。无论您是否喜欢手动控制或自动触发,Capgo 都提供了可靠的安全网来保护您的 Capacitor 应用程序。
设置 Capgo 为回滚管理

要有效地管理回滚,需要安装 Capgo 的核心包,配置应用程序的设置,并设置更新通道。这确保了顺利的部署和可靠的安全网来处理问题。
安装和配置 Capgo
首先添加 @capgo/capacitor-updater 包到您的 Capacitor 项目本包管理应用程序的更新和回滚。 在项目目录中运行以下命令:
npm install @capgo/capacitor-updater
npx cap sync
安装后,更新您的 capacitor.config.json 文件以启用更新功能。 以下是示例配置:
{
"plugins": {
"CapacitorUpdater": {
"autoUpdate": true,
"updateUrl": "https://api.capgo.app/updates",
"privateKey": "your-private-key-here",
"version": "1.0.0",
"directUpdate": false
}
}
}
- 设置
autoUpdate到true上下文:实时更新产品页面。 角色:短的 UI 标签或导航项。 消息键 `live_update_dynamic_label_to` (实时更新动态标签到)。 - 允许自动更新。
directUpdate保持false作为
Next, link your app to Capgo’s update system. Sign up at 接下来,链接您的应用程序到 capgo 的更新系统。 请注册在 capgo.app然后注册您的应用程序使用 CLI:
npx @capgo/cli app add your-app-id
本步骤将您的项目连接到 Capgo,启用版本跟踪和用户分段,精确地管理回滚。
完成初始设置后,您可以配置更新通道来控制和监控部署。
设置更新通道
更新通道有助于管理更新的分发,使您能够进行彻底的测试和快速回滚。
要创建通道,请使用 Capgo 的 CLI 工具。首先设置三个关键通道以实现高效的回滚管理:
npx @capgo/cli channel add staging
npx @capgo/cli channel add beta
npx @capgo/cli channel add production
每个通道都有特定的用途:
| 设置 | 用途 | 上下文:Capgo营销网站。角色:短的UI标签或导航项。消息键 `subprocessors_table_purpose` (子处理程序表用途)。 |
|---|---|---|
| 示例值 | 通道名称 | prod, beta, staging |
| 版本模式 | 定义允许的版本格式 | 1.0.* |
| 用户访问 | 指定哪些用户接收更新 | 具体组ID |
| 更新频率 | 确定更新何时分发 | 即刻, 预定 |
对于生产环境,使用稳定的版本模式,如 1.0.*而测试环境可以使用更灵活的格式。
为了进一步优化回滚管理,设置用户分段。这样可以在回滚时针对特定组进行目标,减少干扰同时有效地解决问题。
通过定义基于错误率、性能指标或用户反馈的触发器来自动回滚。这些触发器确保问题能够及时得到解决,而无需人工干预。
在发布到生产环境之前,测试回滚功能在预发布渠道中。这个步骤确保回滚系统在真实世界条件下正常工作。
最后,将更新渠道与CI/CD管道 CI/CD管道整合起来。这一自动化流程简化了部署和回滚,保持了工作流的高效,同时也为未知问题提供了安全保障。
如何使用Capgo执行回滚
Capgo的更新验证系统确保应用程序保持稳定,而回滚功能则在此基础上提供了手动和自动恢复选项。了解如何有效地使用这些方法可以帮助您快速恢复功能,当出现问题时。
手动回滚步骤
手动回滚给您控制权,选择并应用稳定的版本,让您能够在采取行动之前评估情况。
首先,在您的 capacitor.config.json 文件中设置 autoUpdate 到 false. 这将停止 Capgo 自动管理更新,给您完全控制更新过程。
一旦自动更新被禁用,使用 CapacitorUpdater.download() 方法来获取所需的版本并 CapacitorUpdater.set() 来应用它。以下是一个示例:
import { CapacitorUpdater } from '@capgo/capacitor-updater'
const version = await CapacitorUpdater.download({
url: 'https://github.com/Cap-go/demo-app/releases/download/0.0.4/dist.zip',
})
await CapacitorUpdater.set(version); // Sets the new version and reloads the app
使用 CapacitorUpdater.set()下载的版本后,应用将自动重新加载。为了完成回滚过程,请始终调用 CapacitorUpdater.notifyAppReady() 来确认更新是稳定的。
“如果没有调用此方法,则您的应用程序将回滚到上一次成功版本(或内置捆绑包)”” [2]
如果确认步骤被跳过,Capgo 将假设回滚失败,并可能触发回滚到最后一次工作版本。
对于需要更快速行动的情况,自动回滚可以在不需要人工干预的情况下处理恢复。
自动回滚触发器
自动回滚是理想的选择,尤其是在需要持续监控的环境中。它们通过检测问题并自动恢复到稳定版本来最小化停机时间。这些触发器基于健康检查和预定义的错误阈值。
设置健康检查以监控应用程序的关键功能,例如用户身份验证或数据加载。当这些检查检测到问题时,自动触发器可以立即回滚到稳定版本。
使用性能指标定义错误阈值来确定是否需要回滚。以下表格突出了需要考虑的关键组件:
| 组件 | 目的 | 上下文:Capgo营销网站。角色:短UI标签或导航项。消息键`subprocessors_table_purpose`(子处理程序表目的) |
|---|---|---|
| 实施技巧 | 版本控制 | 上下文:Capgo营销网站。角色:短UI标签或导航项。消息键`version_control`(版本控制) |
| 跟踪部署历史 | 监控进展和结果 | 错误阈值 |
| 定义回滚触发器 | 恢复步骤概述 | 立即处理问题的工作流设置 |
在应用程序环境和风险耐受度的基础上,决定是否采用手动或自动回滚
“回滚是重新部署code的前一个版本。它在大多数情况下是最佳首选选项,因为在<5分钟内,它可以结束负面用户影响,并且不排除您也可以执行其他选项” 回滚的最佳实践 回滚管理策略 [3]
稳定性和安全性至关重要的生产环境中,手动回滚允许进行细致的评估和控制。另一方面,测试和阶段环境可能更适合自动回滚的速度和效率。结合两种方法确保平衡的策略——自动触发器处理紧急故障,而手动回滚则保留用于复杂问题,需要人工监督
回滚管理最佳实践
阶段性发布和风险减少
阶段性发布作为应用程序更新的安全保障。相反,不要一次性将更改推送给所有用户,而是将更新分阶段发布给较小的用户组。首先选择代表1-5%的用户组。确保这个用户组包括各种设备类型、操作系统和使用行为的多样化组合。监控他们的性能24-48小时以捕捉早期迹象
阶段性发布和风险减少
功能标志可以在这里成为救命稻草。它们允许您立即禁用特定功能,而无需进行完整回滚 [4].
制定明确的标准来通过回滚阶段。例如,您可能会根据设备稳定运行的小时数或崩溃阈值来做出决定。一个好的经验法则是在扩大回滚之前,至少稳定1,000个设备小时。工具,如Capgo的更新频道,会使此过程更容易,让您可以将更新.assign到特定用户组,如beta测试者或早期采用者,从而确保对谁和何时提供更新有精确的控制
以下是一个阶段回滚的例子
| 回滚阶段 | 用户百分比 | 监控时间 | 成功标准 |
|---|---|---|---|
| 初始测试 | 1–5% | 24–48小时 | 崩溃率小于0.1%且正常性能 |
| 早期采用者 | 10–20% | 48–72小时 | 稳定性能和积极的用户反馈 |
| 通用发布 | 100% | 持续 | 无关键问题和持续性能 |
回滚后监控
完成回滚后,进行彻底的监控以确认其成功并防止未来问题的发生。
设置实时警报并跟踪关键性能指标,如崩溃率、应用启动时间、内存使用率和网络性能。这些指标对于评估稳定性和用户体验至关重要。在生产环境中,目标是达到99.9%的基准稳定性,并确保当性能低于此水平时立即收到警报。
继续监控至少72小时以确认应用已恢复到稳定状态。重点关注直接影响用户的指标,如应用启动速度或特性响应速度。
使用清晰的升级程序的错误跟踪工具。自动化报告,涵盖回滚事件的原因、受影响用户和解决时间,可以帮助您的团队从每个事件中学习。详细记录这些事件,包括触发器、解决步骤和所学的经验,对于改进流程和培训团队至关重要。
监控和诊断
Avoiding Rollback Failures
Troubleshooting Rollback Issues
解决回滚问题
解决校验失败
检查源文件和回滚包的完整性
- 如果需要,请从版本控制系统重新下载或重新生成包
- __CAPGO_KEEP_0__的端到端加密帮助在传输过程中保护文件,但在本地存储中仍然可能出现问题。如果多个用户受影响,请清除他们的本地缓存以删除受损的临时文件。您可以通过__CAPGO_KEEP_1__的更新通道自动化此过程,通过推送一个小的配置更新强制下载最新版本
Capgo’s end-to-end encryption helps secure files during transmission, but problems can still occur with local storage. If multiple users are affected, clear their local cache to remove corrupted temporary files. You can automate this through Capgo’s update channels by pushing a small configuration update that forces a fresh download.
解决版本冲突和网络问题
解决回滚问题的指南
当您的应用程序不同部分没有正确同步时,版本冲突就会发生。如果发生这种情况,请立即回滚到最后一个稳定版本,以最小化中断。使用Capgo的更新频道,您可以将回滚限制为特定用户组进行测试,然后在更广泛的范围内进行回滚。
详细日志对于诊断这些冲突至关重要。查找错误,如API版本不匹配或数据库架构问题,以确定问题是否出在后端更改、客户端更新或两者中。
另一方面,网络问题可能会完全阻止回滚尝试。像连接超时、SSL证书错误或代理配置错误这样的问题是常见的罪魁祸首。要解决这些问题:
- 确保所有更新端点、证书和版本标识符都是最新的。
- 在与用户遇到问题的相同环境中测试您的网络连接。
在企业环境中,代理和防火墙规则可能会干扰更新。与企业客户合作,确认Capgo的更新端点已被列入白名单,并且 安全策略 不会阻止回滚过程。
| 测试场景 | 实施方法 | 成功标准 |
|---|---|---|
| 版本不符 | 部署不兼容的包版本 | 回滚自动激活 |
| 损坏的包 | 上传损坏的更新 | 检测错误并恢复系统 |
| 网络故障 | 模拟网络故障 | 从最后一个稳定版本恢复 |
| API 超时 | 在API响应中引入延迟 | 使用fallback机制处理延迟 |
定期测试版本不匹配、损坏的包、网络故障和API超时等场景,确保回滚机制在真实世界挑战面前准备就绪。这种主动的方法在生产环境出现问题时会增强信心。
结论
拥有可靠的回滚策略对于维持应用程序的稳定性至关重要 Capacitor 应用程序, 并且 Capgo 提供了工具来使此过程变得顺畅。它结合了高效的更新管理 和强大的安全措施来确保您的应用程序始终可靠且受保护 __CAPGO_KEEP_0__ 的独特之处在于其
Capgo’s standout feature is its ,它允许您快速回滚到之前的版本,如果出现问题。这可以最小化停机时间并尽量减少对用户的干扰。除此之外,平台还确保遵守苹果和谷歌的要求,同时使用端到端加密 来保护您的应用程序在生产环境中 “__CAPGO_KEEP_0__ 是开发人员想要提高生产力必不可少的工具。避免对 bug 修复进行审查是黄金的。” - Bessie Cooper
Capgo [1]
这些功能简化了工作流程并提供了立即解决问题的解决方案。通过CI/CD和semantic-release自动化,Capgo简化了回滚过程。无论您面临的是校验和验证错误、版本不匹配还是网络中断,Capgo的基础设施和监控工具都有助于您在问题升级到用户之前解决问题。
对于生产中管理Capacitor应用的团队,Capgo提供了安全性、可靠性和简单性所需的rollback策略。已有超过2,000个应用程序信赖该平台,您选择的解决方案既提高了开发人员的效率,也提高了用户满意度。 [1].
当问题发生时,Capgo确保您可以立即解决问题。
常见问题
::: faq
Capgo如何在回滚期间保持应用程序更新的安全性?
Capgo采用 端到端加密 以保护应用程序更新的每个阶段,从创建到交付。这样就确保了更新始终受到保护,仅限于授权用户通过严格的访问控制访问。
为了确保更新的完整性,Capgo使用 加密检查 例如散列和数字签名。这些工具确认更新未被篡改。如果出现任何问题,平台的自动回滚功能允许您快速安全地切换到较早的版本。这些功能共同确保您的应用程序更新既安全又可靠。 :::
::: faq
使用 Capgo 自动回滚代替手动回滚的好处是什么?
自动回滚 Capgo 提供了比手动回滚更快、更可靠、更无错误的替代方案。当更新后出现问题时,这些回滚可以快速将应用程序恢复到稳定版本,减少停机时间并保持用户体验的流畅性。
自动化的关键在于它可以从等式中移除人类错误。通过遵循预定义的最佳实践,它每次都确保一致性。这不仅节省了宝贵的时间,还促进了应用程序管理的更稳定和高效的方式。对于使用 Capacitor 应用的开发人员,自动回滚提供了一个无压力、可靠的方式来处理更新。 :::
::: faq
如何在发布更新到生产环境之前使用 Capgo 测试回滚功能?
要有效地测试 Capgo 的回滚功能,请先设置一个 测试环境。这样可以在应用程序更新发布到生产环境之前在受控环境中测试更新。请邀请 测试者 为了尽早发现潜在问题,并确保您有 实时监控 跟踪性能并快速检测错误。还要定义明确的 回滚触发器,例如达到特定错误率或接收特定用户反馈,以便您知道何时需要回滚更新。
在发布任何更新之前,务必彻底测试回滚过程。确保它可以无缝地返回到之前的稳定版本,而不会引入额外的问题。模拟失败场景是另一个验证回滚机制是否按预期工作的好方法。最后,利用Capgo的 分析工具 来监控更新性能和用户参与度。这些洞察力可以指导您做出明智的决定,了解何时可能需要回滚。
Keep going from Rollback Management with Capgo: Guide
如果您正在使用《Capgo 回滚管理指南》 Rollback Management with Capgo: Guide __CAPGO_KEEP_0__ 回滚管理 回滚管理的实现细节 版本目标 版本目标 更新行为 更新行为 包 包 Capgo 实时更新 for the product workflow in Capgo Live Updates.