更新您的__CAPGO_KEEP_0__应用程序以便无缝使用__CAPGO_KEEP_1__-updater
教程

更新您的 Capacitor 应用程序无缝使用 Capacitor-updater

致 Capacitor ionic 社区,今天我将帮助您将 Capacitor-updater 集成到您的应用程序中。这样您就可以进行无缝发布。

Martin Donadieu

Martin Donadieu

内容营销人员

更新您的 Capacitor 应用程序无缝使用 Capacitor-updater

什么是 Capacitor-updater?

Capacitor-updater 是一种技术,帮助将应用程序更新和改进直接传递给用户。

这尤其适合于进行关键错误修复并立即将其传递给用户,而不需要通过 App Store 进行审查。

您可以将其视为“web-like”侧载更新的灵活性,即使在应用程序可用时也可以立即使用。

此外,它还提供回滚功能,如果新更新崩溃了应用程序

它是如何工作的?

Capgo 保持您的应用程序的 JavaScript 包在同步与 Capgo 服务器,并且每当用户打开应用程序时,它会检查 Capgo 服务器是否有新的更新可供包。当然,它还带有大量的酷酷配置,可以帮助您微调用户体验。

我在所有项目中都使用 Capgo。这使我可以减少 App Store 审核过程的时间。

您可以阅读更多关于它的信息 在这里.

了解 Capgo 中的语义版本控制

Capgo 使用语义版本控制(semver)来确定何时和如何应用更新到您的应用程序。这确保您的用户只接收兼容的更新,并防止自动部署破坏性更改。

语义版本控制遵循以下格式 MAJOR.MINOR.PATCH:

  • MAJOR: 需要原生应用商店发布的破坏性更改
  • MINOR: 后向兼容的新功能
  • PATCH: __CAPGO_KEEP_0__修复的兼容性bug

例如,如果您的应用程序版本为 1.0.0 并且您想更新到 1.0.1 (修补程序),Capgo将自动应用此更新。然而,如果您想从 1.0.0 更新到 2.0.0 (重大版本),这将需要一个本机应用商店发布,因为这表明了破坏性更改。

Capgo的频道设置允许您配置哪些类型的更新将自动应用:

  • 重大策略: 允许所有更新(谨慎使用)
  • 次要策略: 只允许次要和修补程序更新
  • 修补程序策略: Only allows patch updates
  • 元数据策略: 需要满足最低版本要求

You can test how different version combinations work with Capgo’s update logic using our Semver Tester 工具. This tool helps you understand exactly when updates will be applied based on your channel configuration.

是否有任何限制?

As good as it may sound, there are a few things that we need to keep in mind. The first thing is that OTA updates 仅支持 web bundles You may think that this isn’t really a big limitation because, in Capacitor JS, we write almost all code in JS CSS and HTML. While this may be true, there still are native modules that we install to our app. If a module changes your android or iOS directories, you can’t use OTA to update your app. That’s because these directories’ contents are used to compile Native binaries, which OTA can’t update. Even native app cannot update this part.

但是你可以设置你的 CI/CD 来处理这个部分,我在这里写了一个关于 IOS 的教程 here for IOS.

Auto Capgo 配置

现在是时候注册并获取您的 API 密钥来上传您的第一版!首先,请 注册一个 Capgo 账户.

您已成功登录 Capgo,您将看到一个引导页面

引导页面

按照引导页面上的步骤添加您的第一个应用

遵循 CLI 指引

从命令行直接进入您的 Capacitor 应用根目录,运行:

npx @capgo/cli@latest init 要将 Capgo 安装到您的 Capacitor 应用中,CLI 将指导您完成设置应用并使用 Capgo 的过程

如果您想手动完成,请遵循以下步骤

手动 Capgo 配置

安装插件

您应该在应用程序中添加这个 code:

npm i @capgo/capacitor-updater && npx cap sync 将插件安装到您的 Capacitor 应用程序中。

然后在应用程序中添加这个 code,以通知本机插件 JS 包裹是健康的(如果您不这样做,native 插件将回滚到上一个版本):

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

CapacitorUpdater.notifyAppReady()

这将告诉本机插件安装成功。

然后执行 npm run build && npx cap copy 更新您的应用程序。

登录到 Capgo CLOUD

首先,使用 all apikey present in your account to log in with the CLI:

npx @capgo/cli@latest login YOU_KEY

使用 __CAPGO_KEEP_0__ 登录:

Let’s get started by first creating an app in Capgo Cloud with the CLI.

npx @capgo/cli@latest app add

此命令将使用Capacitor配置文件中定义的所有变量来创建应用。

上传您的第一个版本

使用以下命令构建您的code并将其发送到Capgo: npx @capgo/cli@latest bundle upload

默认情况下,版本名称将是您的 package.json 文件中的。

检查 Capgo 是否存在构建。

您甚至可以使用我的 移动沙盒应用.

设置默认渠道

您已经将应用发送到Capgo后,需要设置您的渠道 default To let apps receive updates from Capgo.

npx @capgo/cli@latest channel set production -s default

在设备上接收实时更新

为了让您的应用程序从 Deploy 接收实时更新,您需要在设备或模拟器上运行应用程序。最简单的方法是使用以下命令在模拟器或连接到计算机的设备上启动本地应用程序。

npx cap run [ios | android]

打开应用程序,放到后台,然后再次打开它,您应该在日志中看到应用程序已经更新。

恭喜! 🎉 您成功部署了第一个实时更新。这只是您可以使用实时更新的开始。要了解更多信息,请查看完整的 实时更新文档.

如果您需要停止本地接收更新,请运行此命令 npx @capgo/cli@latest channel set

继续使用 Capacitor-updater 无缝更新您的 Capacitor 应用程序

如果您正在使用 使用 Capacitor-updater 无缝更新您的 Capacitor 应用程序 计划迁移和企业操作,连接它到 Capgo 企业 对于Capgo企业版的产品工作流程 Ionic 企业插件替代品 对于Ionic 企业插件替代品的产品工作流程 Capgo替代品 对于Capgo替代品的产品工作流程 Capgo咨询 对于Capgo咨询的产品工作流程 Capgo高级支持 对于Capgo高级支持的产品工作流程

Capacitor 应用的实时更新

当 web-layer 的 bug 活跃时,通过 Capgo 发布修复,而不是等待几天的 app store 审批。用户在后台接收更新,而原生变化仍然在正常的审批路径中。

立即开始

博客最新文章

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