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

使用 Capacitor-updater 可以无缝升级您的 Capacitor 应用

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

马丁·多纳迪厄

马丁·多纳迪厄

内容营销人员

使用 Capacitor-updater 可以无缝升级您的 Capacitor 应用

什么是Capacitor-更新器?

Capacitor-更新器是一项技术,帮助将应用程序更新和改进立即传递给终端用户。

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

您可以将其视为“网页式”侧载更新的灵活性,即使在可用时也可以立即更新。

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

如何工作?

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

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

您可以阅读更多关于它的信息 在__CAPGO_KEEP_0__中理解语义版本.

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

Capgo uses semantic versioning (semver) to determine when and how updates should be applied to your app. This ensures that your users only receive compatible updates and prevents breaking changes from being automatically deployed.

Semantic versioning follows the format MAJOR.MINOR.PATCH:

  • MAJOR: Native app 库更新需要发布到 app store
  • MINOR: 新功能,向后兼容
  • PATCH: bug 修复,向后兼容

如果您的 app 当前版本为 1.0.0 ,并且您想更新到 1.0.1 (修复版本),Capgo 会自动应用此更新。然而,如果您想从 1.0.0 更新到 2.0.0 (重大版本),这将需要发布一个 Native app 库更新,因为它表示有破坏性变化。

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

  • 主要策略: 允许所有更新(谨慎使用)
  • 次要策略: 只允许次要和补丁更新
  • 补丁策略: 只允许补丁更新
  • 元数据策略: 要求最低版本要求

您可以使用Capgo的更新逻辑测试不同版本 combination的工作情况的Semver Tester工具。 该工具有助于您了解基于您的频道配置何时将应用更新。Semver Tester工具

是否有任何限制?

听起来很不错,但我们需要考虑一些事情。 首先,OTA更新 只适用于Web包。 你可能会认为这不是一个很大的限制,因为在 Capacitor JS 中,我们几乎所有的 code 都是用 JS、CSS 和 HTML 写的。 虽然这可能是真的,但我们仍然有native模块安装到我们的应用程序中。 如果一个模块改变了你的Android或iOS目录,你就不能使用OTA更新你的应用程序。 这是因为这些目录的内容用于编译Native二进制文件,OTA无法更新。 即使是native应用程序也无法更新这个部分。

但你可以设置你的CI/CD来处理这个部分,我制作了一个关于如何做它的教程 在这里IOS.

自动 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 包裹是健康的(如果你不这样做,原生插件会回滚到之前的版本):

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

CapacitorUpdater.notifyAppReady()

这将告诉原生插件安装成功。

然后执行一个 npm run build && npx cap copy 来更新应用程序。

登录到 Capgo 云

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

npx @capgo/cli@latest login YOU_KEY

添加您的第一个应用

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 让应用从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 Enterprise for the product workflow in Capgo Enterprise, Ionic Enterprise Plugin Alternatives 在 Ionic Enterprise Plugin Alternatives 中的产品工作流程 Capgo Alternatives for the product workflow in Capgo Alternatives, Capgo Consulting 为Capgo咨询产品工作流程 Capgo高级支持 为Capgo高级支持产品工作流程

为 Capacitor 应用提供实时更新

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

立即开始

最新博客

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