跳过主要内容
教程

如何在 Capgo 中使用版本

Understand how Capgo manage versions in your Capacitor app, and use it at best. Learn the meaning of major, minor, patch.

马丁·多纳迪厄

马丁·多纳迪厄

内容营销

Capgo 的版本如何工作

Capgo 使用 2 个主要变量来管理您的 Capacitor 应用程序的版本:

  • 原生版本
  • JavaScript 版本
Capacitor 更新系统

所有版本选择都由 Capgo 在服务器端决定。

版本管理系统

要管理 Capgo 版本,请使用 SemVer 系统,了解更多信息 这里.

版本

Where Capgo find the version to compare

您可以通过设置版本键来覆盖此行为。 capacitor.config.json 文件 文档 所有平台都会忽略本地版本。

iOS

在 IOS 中,变量在您的项目中被设置在这里 ios/App/App/Info.plist 在密钥下CFBundleShortVersionStringios/App/App.xcodeproj/project.pbxproj 在指定的密钥下 MARKETING_VERSION 如果 MARKETING_VERSION 在您的 Info.plist 文件.

Android

在 Android 中,变量在您的项目中设置在这里 android/app/build.gradle 下面的键 defaultConfig.versionName

JavaScript ( Capgo 打包版本 )

在 JavaScript 中,变量可以在您的 package.json 下面的键 version 否则,您需要在上传命令中提供它。

默认行为

这是如果您没有更改任何设置,Capgo 通道将如何行为的。

此行为将基于您设置的默认通道。

当您首次安装您的 Capacitor 应用时

当用户第一次下载并打开Ionic应用时,它会联系Capgo服务器。

当前有4种输出:

  • Capgo的本地打包版本(1.2.3)低于Capgo打包版本(1.2.4),Capgo将其打包发送给用户。
  • Capgo的本地打包版本(1.2.3)等于Capgo打包版本(1.2.3),Capgo发送“无需更新”。
  • Capgo的本地打包版本(1.2.4)高于Capgo打包版本(1.2.3),Capgo发送“无需更新”。
  • Capgo的本地打包版本(1.2.3)与Capgo打包版本(2.2.3)相差主版本,Capgo发送“无需更新”。

其他设置

在原生下禁用自动降级

如果您将此设置更改为false,Capgo将始终被认为是可信的版本来源。 然后行为变为:

  • Capgo版本(1.2.4)高于原生版本(1.2.3)

Capgo发送其版本给用户。

禁用自动升级策略

您可以选择以下几种策略。您可以在这里了解更多 这里

JavaScript 打包版本

JavaScript 打包版本是您在执行时发送的版本 npx @capgo/cli@latest bundle upload --channel production

如果您没有使用选项 --bundle 1.2.3,Capgo 将从您的 package.json 文件(在版本键中)中获取打包版本

在您的 Ionic 应用程序安装了一个版本后,Capgo 将是与

  • Their JavaScript bundle version (1.2.3) is lower than Capgo bundle version (1.2.4), Capgo send his bundle to the user.

他们的 JavaScript 打包版本(1.2.3)低于__CAPGO_KEEP_0__打包版本(1.2.4),__CAPGO_KEEP_1__发送他的打包给用户

  • If native bundle version is higher than Capgo version, the Disable auto downgrade under native 如果本地打包版本高于__CAPGO_KEEP_0__版本,则条件会被应用
  • 如果原生捆绑包版本的主版本号小于 Capgo 版本号,条件将被应用。 Disable auto upgrade above major 条件

应用商店更新

当您将 Capacitor 的 JS 应用程序发布到 App Store 时,发生的事情很简单。

您的用户将从商店获取新版本,并在默认情况下从本地更新中删除应用程序中的所有更新。

如果您想改变这种行为,请设置以下设置 resetWhenUpdate 了解更多 这里

这只能在应用程序侧进行更改,而不是像其他设置一样从云端进行更改。

其他设置

在所有这些行为之后,您可以在设备 ID 上添加一些特定的设置,如上所述。

在 Capgo 中,您可以决定为每个设备 ID 覆盖行为。

您可以将设备ID链接到:

  • 一个特定的捆绑包版本
  • 一个特定的频道

这将绕过上述所有设置。

更多信息,请参见下面的文章。

Live updates for Capacitor apps

当一个 web层 bug 活跃时,通过 Capgo 将修复推送到应用商店,而不是等待几天的审批。用户在后台接收更新,而原生更改仍在正常审查路径中。

立即开始

最新博客

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