频道
复制一个包含安装步骤和本插件的完整Markdown指南的设置提示。
如何Capgo选择频道(优先级)
标题:如何Capgo选择频道(优先级)当设备要求Capgo更新时,使用的频道将根据以下顺序(优先级最高)决定:
- 强制设备映射: 如果设备 ID 被明确强制到一个频道(频道页面上的 设备 ),那么这个频道总是会获胜。强制映射是控制台/API的覆盖。Capgo在最后一次覆盖写入后 90 天后会删除它们。请参见 控制台和API覆盖过期.
- Cloud 强制切换 (控制台或公共 API): 在控制台或通过公共 API 中更改设备的频道会写入一个与该设备 ID 关联的强制切换。重新安装应用程序不会清除它;删除强制切换会清除它。同样,90 天的保留期仍然适用。 插件 (本地)
- : 当前插件版本上存储设备频道后台验证后。它不是控制台强制切换。重新安装应用程序会清除它;应用程序必须再次调用,如果您仍然希望该频道。
setChannel()__CAPGO_KEEP_0__ 配置(测试构建默认值)setChannel(): 对于内部/测试/测试构建,您可以设置setChannel()__CAPGO_KEEP_0__ - Capacitor config
defaultChannel(测试构建默认值)__CAPGO_KEEP_0__defaultChannel(遗留的密钥)channel) 在capacitor.config.*所以测试设备从预发布通道开始(例如beta,pr-123). 如果缺失,设备将继续使用云默认值。生产构建通常不设置此值。 - 云默认通道(~99%用户的主要策略): 大多数真实用户都会在此上线。任何新设备,未被强制,未被覆盖,未被本地
setChannel(), 和未被配置defaultChannel使用此。改变它会在秒级对所有人进行推出(或回滚),无需新二进制文件。
为什么 云默认 是主要路径:
- 即时推出或回滚,无需重建或重新发布原生二进制文件。
- 一个地方来管理iOS、Android和Electron行为。
- 更安全:您可以在切换默认之前确认捆绑包存在并设置正确。
- 可审计的更改(团队成员可以在UI和日志中看到谁修改了什么)。 设计原则:上层(强制/覆盖/配置)是 异常 (调试单个用户、QA切换、测试构建默认值)。正常用户流向云端默认。
更改 云端默认 频道会影响 新 正常设备:
- 不被强制
- 没有已有的云端覆盖
- 请不要在应用级别上
defaultChannel定义
如果测试构建带有 defaultChannel: 'beta' 并且您稍后将云默认值更改为 production设备在 beta 通过配置启动的 defaultChannel通过配置 setChannel() 删除强制、云覆盖或本地
assignment 不会删除配置值;该回退值将保持到新二进制文件。
- Force them to another channel (console or Public API).
- 强制将其转移到另一个频道(控制台或公共API)。
- 更改云覆盖在控制台或公共__CAPGO_KEEP_0__中。
setChannel()(本地分配在当前插件版本上)。 - 移除/归档他们所在的频道(然后他们将在下一次检查时再次通过顺序降级)。
- 等待一个控制台/API 超时过期后90天。
- 重新安装应用程序,这将清除一个本地
setChannel()分配,但不是一个控制台/API 超时。
如果一个频道在一个平台上被禁用(见iOS/Android/Electron切换开关),并且否则将被选择,那么选择将跳过它并降级到下一个规则。
注意:设置
defaultChannel意味着改变它需要一个新的二进制文件;在测试/QA中使用它,避免在一般生产控制中使用。
Capacitor 配置示例
Capacitor 配置示例// Example: a TestFlight or internal QA build defaults to the beta channel.const config = { plugins: { CapacitorUpdater: { defaultChannel: 'beta', // Test build default. Omit in production so users attach to cloud default. // legacy key: channel }, },};export default config;如果您稍后改变仪表板的默认设置 production, 设备已经在另一个频道上(通过配置、覆盖或强制)将不会自动移动;只有新设备(或您清除的覆盖/强制)才会接收它。
管理频道
标题:管理频道首先,让我们来看看频道页面。您可以通过 点击您的应用 然后 点击频道选项卡.

创建频道
标题:创建频道如您所见,在下右角有一个加号按钮。1 (在图像中)点击它将打开一个弹出窗口,您可以在其中创建一个新频道。

然后点击 Add 新频道应该出现在列表中。

什么是配置不正确的含义?
标题:什么是配置不正确的含义?有时频道的配置不是有效的。在这种情况下,您将获得一个大警告,列中将显示 Misconfigured 其中一个或多个频道的 Yes 您可以在这里了解更多关于它 删除频道
__CAPGO_KEEP_0__
Section titled “删除一个频道”要从 web 应用程序中删除一个频道,请打开 频道 tab 找到频道行。在 操作 列中点击垃圾桶图标,然后在确认对话框中点击 删除

如果垃圾桶图标不可见,则您的帐户没有为该应用程序授权删除频道的权限。请向组织或应用程序管理员请求授予删除频道的角色,或者使用具有删除频道权限的__CAPGO_KEEP_0__密钥删除频道: channel.delete permission for that app. Ask an organization or app admin to grant a role that can delete channels, or delete the channel with an API key that has permission:
npx @capgo/cli@latest channel delete <channel-name> <app-id>组织和应用绑定 应用预览 密钥可以原子性地删除仅非公共预览频道和与其创建的捆绑包。它无法更改或删除现有的默认/主频道、另一个预览密钥的频道或另一个密钥的捆绑包。请参见 channel delete <preview-channel> <app-id> --delete-bundle__CAPGO_KEEP_0__ 密钥 API Keys 标题:配置频道
点击频道名称以打开频道页面。它是一个带有标签的全屏页面,而不是模态窗口。
频道设置频道标签

频道标签
Channel tabs- 控制台当前频道的当前捆绑包和安装统计。
- 信息: Channel settings listed below, plus progressive rollout and Test Update API.
- 设备: Forced mappings created from the console or Public API only. It does not list every device currently on the channel, and it does not list devices that used
setChannel()查看 Console and API overrides expire. - 历史预览
- Test Update __CAPGO_KEEP_0__: 在浏览器和原生预览中查看链接的捆绑包。 在 App 信息 首先。
信息设置
标题为“信息设置”在此处 信息 选项卡。 设置按以下顺序出现:
首先, 默认下载频道 是一个状态徽章,而不是一个切换按钮。 Active 表示该频道是新设备的云默认值。点击 在应用设置中 修改默认值 应用信息.
查看平台特定的默认值(iOS、Android和Electron) IOS 第二个设置。如果为假,则iOS设备将无法从该频道下载更新。
第三个设置。如果为假,则Android设备将无法从该频道下载更新。 Android 第四个设置。如果为假,则Electron应用将无法从该频道下载更新。
第五个设置。 Electron Manage in App settings
to change the default on Disable auto downgrade under native 设置。如果这个值为真,那么就无法从原生版本降级。这意味着,如果您已经上传了一个版本到应用商店或Google Play商店,并尝试将渠道版本设置为,那么更新(降级)将会失败。 1.2.0 第六是 1.1.0 。这个设置比较复杂,您可以在这里了解更多关于它的信息
第七是 Disable auto update设置。它决定设备是否下载一个完整的zip包,一个文件变更的delta,还是两者兼有。请参见 更新包
第八是 Update package 。如果这个值为真,那么开发者构建将允许从这个渠道下载更新。如果不是,那么任何更新请求,如果设置为false,将会被拒绝。这主要用于测试目的。 __CAPGO_KEEP_0__.
__CAPGO_KEEP_0__ Allow development build__CAPGO_KEEP_0__ prod __CAPGO_KEEP_0__
第九项是 Allow production build如果为假,则生产(商店)构建将不会从此频道接收更新。请在为真实用户服务的频道上保留此选项。
第十项是 Allow Emulators频道的Capgo属性。如果为假,则Capgo将拒绝来自模拟器的任何更新请求。这主要用于测试目的。
第十一项是 Allow physical devices频道的Capgo属性。如果为假,则Capgo将拒绝来自真实手机和平板电脑的更新请求。请在生产频道上保留此选项。
第十二项是 Allow devices to self dissociate/associate频道的__CAPGO_KEEP_0__属性。如果为真,则setChannel方法将可用。如果设置为假并尝试调用setChannel方法,则会出现错误。 setChannel方法将可用。 如果设置为假并尝试调用setChannel方法,则会出现错误。 setChannel方法将不可用。 setChannel方法将不可用。
测试更新 API
标题:测试更新 API在此处 信息 展开 测试更新 API。 Capgo 会显示一个 curl 命令,用于在此频道上的样本设备上进行测试。 /updates 由于缓存,更新可能需要 60 秒才能在 __CAPGO_KEEP_0__ 中显示。如果无法测试频道,控制台会警告您:频道需要至少一个平台(iOS 或 Android)、生产版、物理设备以及要么是默认下载频道,要么允许设备自行分配。
Changes can take up to 60 seconds to show in the API because of caching. If the channel cannot be tested, the console warns you: the channel needs at least one platform (iOS or Android), production builds, physical devices, and either to be the default download channel or to allow device self-assignment.
标题:发送更新通知
您更改关联的捆绑后,控制台可能会要求__CAPGO_KEEP_0__ 发送更新通知. 这会在通道上的设备上静默推送,检查新的捆绑包。首先在应用程序通知选项卡上配置Android和iOS推送凭据。
控制台和API覆盖项过期
标题:控制台和API覆盖项过期强制映射和Dashboard/PublicAPI通道覆盖项被移除 90天 最后一次覆盖写入后90天。最后一次设备登录不会重置计时器。为了让赋值在清理后生存,请在__CAPGO_KEEP_0__配置中(重新安装后生存,需要新的二进制文件来改变)或从应用程序中调用 defaultChannel in your Capacitor config (survives reinstall, needs a new binary to change) or call setChannel() __CAPGO_KEEP_0__通道设备选项卡显示的覆盖保留弹出窗口:控制台覆盖项在90天后过期 setChannel() 通道设备选项卡上的覆盖保留。同样的提示会在您强制将设备ID添加到通道时出现。

与设备存储管理 设备存储管理. Inventory removes devices that have not connected to Capgo for 90 days. Override cleanup removes the mapping even if the device is still active. Full detail: Console and API overrides expire after 90 days.
更新包
标题:更新包打开一个频道并停留在 信息 选项卡上。 更新包 在设置列表中,位于禁用自动更新下。

此设置选择Capgo在设备在此频道检查更新时发送什么。请勿改变 Zip and delta 除非您需要强制使用一种类型。
| 控制台标签 | CLI / API值 | 设备下载什么 |
|---|---|---|
| Zip and delta | all | 当存在时,下载一个完整的zip和一个delta。这是默认设置。 |
| Zip only | zip | 仅下载完整的zip。 |
| Delta only | delta | 仅更改的文件。无法应用delta的插件仍然会接收一个zip。 |
| 仅从内置的zip | zip_from_builtin | 仅在设备仍在商店二进制上时生成zip。第一次实时更新后,Capgo会重新提供zip和delta。 |
| 仅从内置的delta | delta_from_builtin | 仅在设备仍在商店二进制上时生成delta。第一次实时更新后,Capgo会重新提供zip和delta。 |
内置 是指在App Store或Play Store二进制中内置的Web资源,之前任何Capgo更新。使用一个 from builtin 模式,当第一次从商店构建的更新应该是zip-only或delta-only时,后续更新可以使用两者。
Capgo不会将zip-only的频道与delta-only的捆绑包配对,或者反之。控制台,CLI,和 API频道 会拒绝保存并要求您上传缺失的包或切换模式。
您可以从CLI设置相同的值。频道必须已经存在:
npx @capgo/cli@latest channel set production com.example.app --update-package zip有效值: all, zip, delta, zip_from_builtin, delta_from_builtin.
渐进式发布
标题:渐进式发布频道 信息 频道信息选项卡包含一个 渐进式发布 频道信息选项卡顶部显示渐进式发布控制。设置目标包,选择百分比和决策缓存持续时间,然后启用发布。从同一部分,您可以暂停或恢复曝光,促进目标到稳定,回滚它,或者配置自动暂停,回滚或通知,当失败信号超过阈值时。

阅读 渐进式发布 在启用之前阅读一下。它解释了粘性小组、安全百分比变化和自动暂停行为。
继续从 Channels
Channels 部分如果您正在使用 Channels 连接它以规划渠道路由和阶段发布 Channels Channels Channels Channels Beta Testing Solution 为产品工作流程中的Beta Testing Solution Version Targeting Solution 为产品工作流程中的Version Targeting Solution, 和 Capgo 环境最佳实践:使用一个移动应用ID进行分期 为Capgo 环境最佳实践:使用一个移动应用ID进行分期的实际上下文。