跳过内容

从 AppFlow 迁移到 Capgo

包括安装、同步和源 Markdown 指南。 🚦 ionic 宣布 AppFlow 的商业产品,包括 Live Updates,正在停止。现有项目可以运行到, but no new customers are accepted and no new features are planned. This guide walks you through the actions required to migrate to Capgo and highlights the native automation you gain.

,但不接受新客户,并且没有计划新功能。这份指南将指导您完成迁移到 __CAPGO_KEEP_0__ 的步骤,并突出了您获得的原生自动化功能。

迁移概述

Capgo负责管理频道、捆绑包保留、回滚、分析以及CLI上传。迁移主要涉及安装插件并调用 CapacitorUpdater.notifyAppReady()__CAPGO_KEEP_0__ 会处理通道、捆绑保留、回滚、分析和 __CAPGO_KEEP_1__ 上传。迁移简化为安装插件、调用和—如果需要—配置可选的手动控制。以下部分将逐步介绍每个任务。

步骤 0 - 捕获当前 AppFlow 设置

关于 Capgo 页面
  • 注意您的 AppFlow 应用 ID现有渠道和签名密钥
  • 导出您想要存档的任何捆绑包历史记录。
  • 如果您正在使用GitHub Actions 或其他 CI 提供商,保留这些管道 - 它们将继续与Capgo一起工作。

Step 1 – Replace the AppFlow SDK with Capgo

步骤1:替换AppFlowSDK为Capgo
终端窗口
npm uninstall @capacitor/live-updates
npm install @capgo/capacitor-updater
npx cap sync

完成了。 Capgo 将本机 code 包含在 iOS 和 Android 中;不需要额外的 JavaScript 助手。

步骤 2 – 最小配置(无手动字段)

步骤 2:最小配置(无手动字段)

现有的配置块很长。 Capgo 可以自动检测您的项目和频道,因此最小配置是:

capacitor.config.ts
import { CapacitorConfig } from '@capacitor/cli'
const config: CapacitorConfig = {
plugins: {
CapacitorUpdater: {
autoUpdate: true,
autoDeletePrevious: true,
},
},
}
export default config

配置快速参考

配置快速参考
ionic AppFlow 设置Capgo 等价物您需要设置吗?
appId在 Capgo 控制台中管理在创建项目时自动提供
channel / defaultChannel频道规则在控制台/API可选覆盖; 默认值来自服务器。 请参见 版本目标 context: Capgo 解决方案营销页面。 角色: 短 UI 标签或导航项。 见于: 站点头部、组件 SolutionsMegaMenu.astro、页面 solutions/version-targeting.astro。 消息键 `solutions_version_targeting` (解决方案版本目标)。
autoUpdateMethodautoUpdate: true多版本策略
maxVersions默认启用保留策略
enabled不需要Capgo 根据频道切换可用性

步骤 3 – 调用 notifyAppReady() 上下文:关于 Capgo 页面。角色:UI 标签。出现位置:关于 .astro 页面。消息键 `about_how_step_label` (关于步骤标签)

(唯一需要的钩子)

标题:步骤 3 – 调用 notifyAppReady() (唯一需要的钩子) sync, download, and reload, 然后手动隐藏启动屏幕。 Capgo 会执行这些操作。您只需确认应用程序已准备就绪:

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

如果确认信息从未收到,Capgo会自动回滚捆绑包。

如果确认信息永远不会到达, Capgo 将自动回滚捆绑包。

这就是它了 – __CAPGO_KEEP_0__ 会处理背景检查、启动屏幕可见性和回滚功能。
import { CapacitorUpdater } from '@capgo/capacitor-updater'
import { SplashScreen } from '@capacitor/splash-screen'
CapacitorUpdater.addListener('appReady', () => {
// Log diagnostics or run custom code if needed
SplashScreen.hide()
})
CapacitorUpdater.notifyAppReady()

步骤 4 – Capgo 更新策略

步骤 4 – Capgo 更新策略

AppFlow 文档提出了三种策略。以下是它们与 Capgo 的对应关系。

  • AppFlow: 配置 autoUpdateMethod = background, sync() 手动。
  • Capgo: 默认启用。无需 JavaScript。
  • AppFlow: 添加一个 App.addListener('resume') 下载并重新加载的
  • Capgo: 自动更新已经在恢复时运行。若要自定义更新时间窗口,请添加此处理器。
: 自动更新在恢复时已经运行。 只添加处理程序,如果您想自定义时间窗口。
import { App } from '@capacitor/app'
import { CapacitorUpdater } from '@capgo/capacitor-updater'
App.addListener('resume', async () => {
const bundle = await CapacitorUpdater.download()
if (bundle) {
await CapacitorUpdater.set({ id: bundle.id })
}
})

复制到剪贴板

强制更新
  • AppFlow: 提示用户并调用 reload().
  • : Capgo: 在仪表板中将包标记为“强制”,然后监听事件(在事件发射后 majorAvailable : ),提示或强制用户在应用程序内 notifyAppReady(): 第 5 步 - 映射 __CAPGO_KEEP_0__ 调用
: __CAPGO_KEEP_0__ 的等效项Capgo equivalent: 自动处理
LiveUpdates.sync(): __CAPGO_KEEP_0__ 的原生自动更新不需要手动同步调用Capgo的原生自动更新不需要手动同步调用
LiveUpdates.download()CapacitorUpdater.download()可自定义流程
LiveUpdates.reload()CapacitorUpdater.set()可选;仪表板开关控制强制更新
LiveUpdates.getVersion()CapacitorUpdater.current()可选诊断

第 6 步 – 使用 Capgo CLI 或 API 部署

步骤6 – 使用Capgo、CLI或API进行部署

第 6 步 – 部署使用 Capgo CLI 或 API

完成迁移通过上传 __CAPGO_KEEP_0__ __CAPGO_KEEP_1__ 或 __CAPGO_KEEP_2__ 的捆绑包。工作流程与您以前编写的脚本类似,但现在包括原生安全措施:
capgo login # authenticate once
capgo bundle upload \
--path dist \
--channel production # automatically tags platform/version

版本特定部署(如 AppFlow)

完成迁移通过上传 __CAPGO_KEEP_0__ __CAPGO_KEEP_1__ 或 __CAPGO_KEEP_2__ 的捆绑包。工作流程与您以前编写的脚本类似,但现在包括原生安全措施:
# Only deliver to devices on native version 2.0.0 or higher
# Channel must use metadata strategy: --disable-auto-update metadata
capgo bundle upload \
--path dist \
--channel production \
--min-update-version "2.0.0"
# Use channels for different major versions
capgo bundle upload --channel v2 # for app version 2.x
capgo bundle upload --channel v3 # for app version 3.x

查看 版本目标指南 __CAPGO_KEEP_0__ 自动执行:

Capgo 自动升级:

  • 在您接近计划限制时发送主动邮件。
  • 为您提供突发信用额度,以确保您在发布过程中不会被阻塞。
  • 发布18个全球区域的延迟指标到
  • status.__CAPGO_KEEP_0__.app/history status.capgo.app/history.

Ionic企业插件

ionic企业插件

如果您的Ionic堆栈还使用企业插件,请遵循以下针对性的迁移文档。每个指南建议替换Capgo并进行下一步。

常见问题

常见问题

为什么AppFlow会关闭实时更新?

为什么AppFlow会关闭实时更新?

Ionic正在停止商业产品,包括AppFlow,以专注于开源框架。现有客户可以继续使用实时更新,直到 2027年12月31日但不接受新功能或客户。Capgo填补了这一空白,提供了一个专门的本机OTA平台。

大多数团队在一天内完成迁移。概念如频道、发布和发布规则直接映射,我们的团队提供文档和实践支持。在许多情况下,您只需安装插件、调用并上传第一个包。 notifyAppReady()我们会节省多少钱?

$499/月 $499/月.Capgo 开始于 $14/月 $0.001/MAU 。您还获得加密、自动回滚和全球延迟监控。节省多少钱?

何时应该迁移?

迁移时机

由于 AppFlow 进入维护模式,尽早迁移可以让您获得持续的 Capgoinnovation。我们建议在您的发布计划中选择合适的时间切换。我们的工程团队将帮助您规划切换过程,确保 CI/CD 和部署保持正常运行。

额外资源

版本目标指南

Capgo 为企业量身定制,提供原生增量更新、加密包和持续创新。迁移后,您可以删除 AppFlowglue code,依赖原生自动化,并保持不间断的发布。

如果您正在使用 迁移到 Capgo To plan migration and enterprise operations, connect it with Capgo 企业版 For the product workflow in Capgo 企业版 Ionic 企业插件替代方案 For the product workflow in Ionic 企业插件替代方案 Capgo 替代方案 For the product workflow in Capgo 替代方案 Capgo 咨询服务 For the product workflow in Capgo 咨询服务, and Capgo 高级支持 For the product workflow in Capgo 高级支持。