跳过主要内容
简体中文

Capgo 的版本如何工作

了解如何在您的 Capacitor 应用程序中管理 Capgo 版本,并尽可能地使用它。学习主要、次要和补丁版本的含义。

马丁·多纳迪

马丁·多纳迪

内容营销

Capgo 的版本如何工作

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

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

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

版本管理系统

要管理版本 Capgo,请使用 SemVer 系统。阅读 SemVer 规范 或检查 Capgo 与 Semver 测试器的更新兼容性。 版本.

在 __CAPGO_KEEP_0__ 中找到要比较的版本。

Where Capgo find the version to compare

文件 capacitor.config.json 这里有文档。 所有平台对于本地版本都将被忽略。 SemVer Tester

IOS

在 IOS 中,变量是在您的项目中设置的,具体位置在这里 ios/App/App/Info.plistCFBundleShortVersionString 具体位置在这里 ios/App/App.xcodeproj/project.pbxproj 如果 MARKETING_VERSION 在您的 MARKETING_VERSION 文件中设置的。 Info.plist Android

在 Android 中,变量是在您的项目中设置的,具体位置在这里

具体位置在这里 android/app/build.gradle JavaScript ( __CAPGO_KEEP_0__ 包版本 ) defaultConfig.versionName

JavaScript ( Capgo bundle version )

In JavaScript 中,var 可以在您的 package.json 下面设置 version 否则,您需要在上传命令中提供它。

默认行为

这是如何Capgo频道会行为如果您没有改变任何设置。

此行为将基于您创建的默认频道的唯一频道。

当您的Capacitor应用进行新鲜安装时

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

目前,4种输出可能发生:

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

其他设置

在本地下禁用自动降级

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

  • 本地版本(1.2.4)高于 Capgo 版本(1.2.3)

Capgo 将其版本发送给用户。

禁用自动升级策略

您可以选择以下策略之一。您可以在这里了解更多信息 这里

JavaScript 包版本

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

如果您没有使用选项 --bundle 1.2.3Capgo 将从您的文件(在版本键中)获取包版本。 package.json 在 Your Ionic 应用程序安装了一个版本后,__CAPGO_KEEP_0__ 将是与其进行比较的版本。

他们的 JavaScript 包版本(1.2.3)低于 Capgo 包版本(1.2.4),__CAPGO_KEEP_1__ 将发送其包给用户。

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

如果原生包版本高于 __CAPGO_KEEP_0__ 版本,则条件生效。

  • 如果原生包版本的主版本号低于 Capgo 版本,则条件生效。 Disable auto downgrade under native 应用商店更新
  • 当您将 Capgo 的 JS 应用程序发布到 App Store 时,发生的事情很简单。 Disable auto upgrade above major 您的用户将从商店获取新版本并在应用程序中默认删除所有本地更新。

__CAPGO_KEEP_1__

Capacitor

__CAPGO_KEEP_0__

如果您想改变该行为,需要设置设置 resetWhenUpdate 了解更多 在这里

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

其他设置

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

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

您可以将一个设备ID链接到:

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

这将绕过上述所有设置。

在下面的文章中了解更多。

从 Capgo 中了解版本工作原理

如果您正在使用 了解 Capgo 中的版本工作原理 要规划原生插件工作,连接它与 Capgo 插件目录 在 Capgo 插件目录中了解产品工作流程 Capacitor 由 Capgo 提供的插件 在 Capacitor 由 Capgo 提供的插件中了解实现细节 添加或更新插件 在添加或更新插件中了解实现细节 Ionic Enterprise 插件替代方案 在 Ionic Enterprise 插件替代方案中了解产品工作流程 Capgo 原生构建 为产品工作流程中的 Capgo 原生构建。

Capacitor实时更新

当出现web层bug时,通过Capgo实时更新修复bug,而不是等待应用商店审批几天。用户在后台接收更新,原生变化仍然在正常审批路径中。

立即开始

最新博客

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