Capgo | 版本目标

目标版本

减少惊喜,提高速度

降低风险和技术债务。推送更新到特定的本机版本,逐渐发布更改,并保持较旧的版本稳定 - 但仍然控制您的更新分发。

每个本机版本的频道

为每个本机构建创建一个频道。当您发布本机版本1.5.0时,创建一个频道。所有JS更新都将该频道中的本机版本1.5.0。

选择性更新分发

推送更新到版本1.3、1.4和1.5,但跳过1.2。适用于较旧的本机版本无法支持新功能的情况。

AppFlow迁移准备

重现AppFlow的版本关联频道行为。每个本机构建映射到一个Capgo频道,具有您习惯的控制。

优雅的废弃

当你准备停用旧版本时,不要再推送更新。旧版本的用户保持稳定,而新版本可以获得更新。

AppFlow迁移

AppFlow用户:您的迁移路径

AppFlow会自动将原生版本绑定到捆绑包。使用Capgo,您可以获得更灵活的行为:

  • 1
    为每个原生版本创建一个频道(例如‘native-1.5.0’)
  • 2
    配置您的应用程序使用匹配其原生版本的频道
  • 3
    将捆绑包推送到特定频道以实现目标分发
  • 4
    使用我们的CLI在需要时一次性推送到多个频道
capacitor.config.ts
// Set channel based on native version
import { CapacitorConfig } from '@capacitor/cli'
import { version } from './package.json'

const config: CapacitorConfig = {
  plugins: {
    CapacitorUpdater: {
      defaultChannel: `native-${version}`,
    }
  }
}

// Upload to specific version channels
# Push to all 1.5.x versions
npx @capgo/cli bundle upload --channel native-1.5.0
npx @capgo/cli bundle upload --channel native-1.5.1
npx @capgo/cli bundle upload --channel native-1.5.2

# Skip older versions that can't support new features
# native-1.4.x devices stay on their current bundle

常见场景

原生版本变更

原生版本2.0具有新插件API。仅将使用新API的JS更新推送到2.0+频道。

逐步发布

在最新的本机版本上测试一个风险的变更。如果稳定,推送到旧版本。

版本落日

停止更新本机 1.x,同时继续将 2.x 发送给用户。旧版本的用户将保持在他们最后一个稳定的更新。

版本到频道映射

每个本机版本都指向自己的频道,以便精确控制更新

本机 2.0
native-2.0.0
最新打包
本机 1.5
native-1.5.0
最新打包
Native 1.4
native-1.4.0
没有新更新

仅将更新推送到 2.0 和 1.5 通道。1.4 版本的用户将保持在他们最后一次工作的捆绑包中。

需要精确的更新控制吗?

开始针对特定的本机版本进行更新。