Migrate from AppFlow to Capgo
复制一个包含安装步骤和此插件的完整Markdown指南的设置提示
🚦 ionic 宣布 AppFlow 的商业产品,包括实时更新,正在停止。现有项目可以运行到 2027 年 12 月 31 日,但不接受新客户,并且没有计划新功能。这份指南将指导您完成迁移到 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 将本机 code 包含在 iOS 和 Android 中;不需要额外的 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 | API控制台中的频道规则 | 可选覆盖;默认值来自服务器。请参见 版本目标 适用于多版本策略 |
autoUpdateMethod | autoUpdate: true | 默认启用 |
maxVersions | 保留策略 | 已配置中心(默认1个月,最大24个月) |
enabled | 不需要 | Capgo 根据频道切换可用性 |
步骤 3 – 呼叫 notifyAppReady() (唯一需要的钩子)
步骤 3 – 呼叫 notifyAppReady() (唯一需要的钩子)在 Ionic 的指南中,您将 sync, download, 然后手动隐藏启动屏幕。__CAPGO_KEEP_0__ 将执行这些操作。您只需确认应用程序已准备好: 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()这就是全部了—Capgo 将处理后台检查、启动屏幕可见性和回滚等功能。
That’s it—Capgo handles the background checks, splash visibility, and rollbacks for you.
Optional: run logic before the splash screen hides
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 documents three strategies. Here is how they map to Capgo:
后台(默认)
后台(默认)- AppFlow: 配置
autoUpdateMethod = background, 调用sync()手动。 - Capgo: 启用默认。无需 JavaScript。
Always latest
Always latest- AppFlow: 添加一个
App.addListener('resume')handler - Capgo__CAPGO_KEEP_0__
: 自动更新在恢复时已经运行。添加处理程序仅当您希望自定义时间窗口。
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 }) }})Copy to clipboard
Force update- AppFlow:提示用户并调用
reload(). - :Capgo:在仪表板中将包标记为“强制”,然后监听事件(在事件发生后发出),提示或强制用户在应用程序内
majorAvailable步骤 5 - Mapping __CAPGO_KEEP_0__ callsnotifyAppReady()AppFlow 方法
| 自动处理 | Capgo equivalent | :在仪表板中将包标记为“强制”,然后监听事件(在事件发生后发出),提示或强制用户在应用程序内 |
|---|---|---|
LiveUpdates.sync() | 步骤 5 - Mapping __CAPGO_KEEP_0__ calls | 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)如果您需要针对特定的原生版本(类似于AppFlow的原生版本锁定):
# Only deliver to devices on native version 2.0.0 or higher# Channel must use metadata strategy: --disable-auto-update metadatacapgo bundle upload \ --path dist \ --channel production \ --min-update-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查看 版本目标指南 提供全面策略。
Capgo 自动:
- __CAPGO_KEEP_0__ 保留每次安装的设备级审计日志。
- __CAPGO_KEEP_0__ 在您接近计划限制时发送主动邮件。
- __CAPGO_KEEP_0__ 提供突发信用额度,以确保您在发布过程中不会被阻塞。
- 发布 latency 指标的 18 个全球区域在 status.capgo.app/history.
Ionic 企业插件
Ionic 企业插件如果您的 Ionic 堆栈还使用企业插件,请遵循以下针对性的迁移文档。每个指南建议替换 Capgo 并进行下一步。
常见问题
常见问题为什么 AppFlow 停止提供实时更新?
为什么 AppFlow 停止提供实时更新?Ionic 停止商业产品,包括 AppFlow,来专注于开源框架。现有客户可以继续使用实时更新,直到 2027 年 12 月 31 日,但不接受新功能或客户。Capgo 填补了这一空白,提供了一个专门的本地 OTA 平台。
迁移需要多长时间?
迁移需要多长时间?大多数团队在一天内就完成了迁移。概念,如频道、部署和发布规则,直接映射,我们的团队提供了文档和实践支持。在许多情况下,您只需安装插件,调用 notifyAppReady(), 并上传您的第一个包。
我们会节省多少钱?
将我们节省的钱用来做什么?是的。AppFlow实时更新从} $499/月.Capgo 从 Capgo 开始 $14/月 根据使用量定价,价格会降至大约 $0.001 每 MAU由于 AppFlow 进入维护模式,尽早迁移可以让您获得持续的 __CAPGO_KEEP_0__innovation。我们建议在您的发布计划允许时切换。我们的工程团队将帮助您规划更改以确保 CI/CD 和部署继续运行。
何时应该迁移?
何时应该迁移?由于 AppFlow 进入维护模式,尽早迁移可以让您获得持续的 Capgoinnovation。我们建议在您的发布计划允许时切换。我们的工程团队将帮助您规划更改以确保 CI/CD 和部署继续运行。
额外资源
额外资源需要帮助?
需要帮助?- 预约升级会话: book.capgo.app/demo
- 加入社区: Capgo Discord
- 跟踪问题/请求功能: github.com/Cap-go/capacitor-updater
Capgo 是为企业量身定制的,需要原生增量更新、加密包和持续创新。您迁移后可以删除 AppFlowglue code,依赖原生自动化,并保持不间断的发布。
继续从 AppFlow 到 Capgo
继续从 AppFlow 到 Capgo如果您正在使用 Migrate from AppFlow to Capgo 到计划迁移和企业运营,连接它 Capgo 企业 为Capgo 企业中的产品工作流 Ionic 企业插件替代方案 为Ionic 企业插件替代方案中的产品工作流 Capgo 替代方案 为Capgo 替代方案中的产品工作流 Capgo 咨询 为Capgo 咨询中的产品工作流 Capgo 高级支持 为Capgo 高级支持中的产品工作流