从 AppFlow 迁移到 Capgo
复制一个包含安装步骤和本插件的完整 Markdown 指南的配置提示。
🚦 ionic 宣布 AppFlow 的商业产品,包括实时更新,正在停止。现有项目可以运行到 31 December 2027,但不再接受新客户,并且没有计划新功能。这份指南将指导您完成迁移到 Capgo 的步骤,并突出了您获得的本机自动化。
迁移概述
标题:迁移概述Capgo 会为您处理频道、捆绑保留、回滚、分析和 CLI 上传。迁移简化为安装插件、调用 CapacitorUpdater.notifyAppReady(),并(如果需要)配置可选的手动控制。以下各节将逐步指导您完成每个任务。
步骤 0 —— 记录当前 AppFlow 设置
步骤 0 —— 记录当前 AppFlow 设置- 注意 AppFlow App ID现有渠道和签名密钥。
- 导出您要存档的任何捆绑包历史。
- 如果您正在使用 GitHub Actions 或其他 CI 提供商,请保留这些管道——它们将与 Capgo 一起正常工作。
步骤 1 —— 将 AppFlow SDK 替换为 Capgo
步骤 1 —— 将 AppFlow SDK 替换为 Capgonpm uninstall @capacitor/live-updatesnpm install @capgo/capacitor-updaternpx cap sync已经完成。Capgo 将 iOS 和 Android 的本机 code 打包在一起;不需要额外的 JavaScript 助手。
步骤 2 — 最小配置(无手动字段)
标题:步骤 2 — 最小配置(无手动字段)现有的配置块很全面。Capgo 可以自动检测您的项目和频道,因此最小配置是:
import { CapacitorConfig } from '@capacitor/cli'
const config: CapacitorConfig = { plugins: { CapacitorUpdater: { autoUpdate: true, autoDeletePrevious: true, }, },}
export default config配置快速参考
标题:配置快速参考| Ionic AppFlow 设置 | Capgo 的等效项 | 您需要设置它吗? |
|---|---|---|
appId | 在 Capgo 控制台中管理 | |
channel / defaultChannel | Channel rules in the dashboard/API | 控制台中的渠道规则/__CAPGO_KEEP_0__ 多版本策略的版本目标 |
autoUpdateMethod | autoUpdate: true | 默认开启 |
maxVersions | 保留策略 | 集中配置(默认1个月,最大24个月) |
enabled | 不需要 | Capgo 每个渠道切换可用性 |
步骤3 – 调用 notifyAppReady() (唯一必需的钩子)
步骤 3 – 调用 notifyAppReady()(唯一必需的钩子)在 Ionic 的指南中您会 sync, download reload, then hide the splash screen manually. Capgo performs those actions natively. You only need to confirm the app is ready:
import { CapacitorUpdater } from '@capgo/capacitor-updater'
CapacitorUpdater.notifyAppReady()If the confirmation never arrives, Capgo rolls the bundle back automatically.
如果确认信息从未到达,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 – 更新策略翻译AppFlow 文档了三种策略。以下是它们如何映射到 Capgo:
背景 (默认)
背景 (默认)标题- AppFlow: 配置
autoUpdateMethod = background,调用sync()手动。 - Capgo: 默认启用。无需 JavaScript。
始终最新
标题:始终最新- AppFlow: 添加一个
App.addListener('resume')下载并重新加载的处理器。 - Capgo: 在恢复时自动更新。 如果您想设置自定义时间窗口,请添加处理器。
Optional: 手动恢复检查
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 步:映射 API 调用
步骤 5:映射 API 调用| AppFlow 方法 | Capgo 的等效项 | 您需要它吗? |
|---|---|---|
LiveUpdates.sync() | 自动更新已处理 | Capgo 的原生自动更新不需要手动同步调用 |
LiveUpdates.download() | CapacitorUpdater.download() | 自定义流程可选 |
LiveUpdates.reload() | CapacitorUpdater.set() | 自定义流程可选;仪表盘开关处理强制更新 |
LiveUpdates.getVersion() | CapacitorUpdater.current() | 可选诊断 |
第 6 步:使用 Capgo CLI 或 API 部署
第 6 步 – 使用 Capgo CLI 或 API 部署通过上传 Capgo CLI 或 API 来完成迁移。工作流程与您之前编写的脚本类似,但现在包含了原生安全措施:
capgo login # authenticate oncecapgo bundle upload \ --path dist \ --channel production # automatically tags platform/version版本特定部署(如 AppFlow)
如果您需要针对特定的原生版本(类似于 AppFlow 的原生版本锁定):终端窗口
# Only deliver to devices on native version 2.0.0 or highercapgo bundle upload \ --path dist \ --channel production \ --native-version "2.0.0"
# Use channels for different major versionscapgo bundle upload --channel v2 # for app version 2.xcapgo bundle upload --channel v3 # for app version 3.x版本目标指南 了解全面策略。 版本特定部署(如 AppFlow)
Capgo 自动化:
- __CAPGO_KEEP_0__ 为每次安装都记录设备级别的审计日志。
- 当您接近计划限制时,__CAPGO_KEEP_0__ 会发送主动邮件。
- __CAPGO_KEEP_0__ 提供了短期的额外信用,确保您在发布过程中不会被阻塞。
- 在 18 个全球区域发布延迟指标。 status.capgo.app/history.
If your Ionic stack also uses enterprise plugins, follow the targeted migration docs below. Each guide recommends the Capgo replacement and the next steps.
- 从 Ionic Auth Connect 迁移
- 从 Ionic Identity Vault 迁移
- 如果您的 Ionic 堆栈还使用企业插件,请遵循以下针对性的迁移文档。每个指南建议 __CAPGO_KEEP_0__ 的替代方案和下一步。
常见问题
常见问题为什么 AppFlow 停止实时更新?
为什么 AppFlow 停止实时更新?Ionic 停止开发商用产品,包括 AppFlow,专注于开源框架。现有客户可以继续使用实时更新,直到 2027 年 12 月 31 日,但不接受新功能或客户。Capgo 填补了这一空白,提供了一个专门的本地 OTA 平台。
迁移需要多长时间?
迁移需要多长时间?大多数团队在一天内完成迁移。频道、发布和发布规则等概念直接映射,我们的团队提供文档和现场支持。在许多情况下,您只需安装插件、调用 notifyAppReady()并上传您的第一个捆绑包。
我们会节省钱吗?
Section titled “我们会节省多少钱?”是的。 AppFlow 实时更新从 $499/月. Capgo 从 $14/月 使用基于的定价降至大约 $0.001/MAU。您还获得加密、自动回滚和全球延迟监控。
由于 AppFlow 进入维护模式,因此尽早迁移可以让您获得持续的 Capgoinnovation。我们建议在您的发布计划允许时切换。我们的工程团队将帮助您规划更改以确保您的 CI/CD 和部署继续运行。
- 版本目标指南 - 深入了解 AppFlow 风格的版本匹配策略
- Breaking Changes - 使用渠道管理主要版本更新
- 渠道管理 - 完整渠道配置参考
- 预约迁移会议: cal.com/team/capgo/demo
- 加入社区: Capgo Discord
- 跟踪问题 / 请求功能: github.com/Cap-go/capacitor-updater
Capgo 是为需要原生 delta 更新、加密捆绑包和持续创新的大型企业而设计的。 一旦您迁移,您就可以删除 AppFlowglue code,依赖原生自动化,并保持不间断的发布。