调试
复制一个包含安装步骤和本插件的完整Markdown指南的设置命令。
如果您收到云拒绝code并需要具体的修复步骤,请参阅 常见更新问题.
来自后端
标题:来自后端| code | 描述 |
|---|---|
| InvalidIp | 用户位于Google数据中心,更新时间小于4小时。这是为了防止Google机器人设备被计入您的帐户。 |
| 需要升级计划 (之前 需要升级) | 表示您已达到计划限制,设备将不会接收更新,直到您升级或下个月 |
| 无新 | 设备上有最新可用的版本。 |
| __CAPGO_KEEP_0__ | 设备在 iOS 平台,但在渠道设置中禁用了该平台。 |
| 设备在 Android 平台,但在渠道设置中禁用了该平台。 | 设备在渠道设置中禁用了自动更新。 |
| 设备版本为 ( | 设备版本为 ( |
| 设备版本为 ( | 设备版本为 (1.2.3设备在渠道设置中禁用了开发构建。1.2.2设备在渠道设置中禁用了开发构建。 |
| 设备在渠道设置中禁用了开发构建。 | 设备有一个开发版,但在渠道设置中已禁用。 |
| 禁用模拟器 | 设备是模拟器,但在渠道设置中已禁用。 |
| 无法获取捆绑包 | 无法为捆绑包下载生成有效的签名URL。这通常发生在捆绑包URL生成失败或返回的URL不是以http/https开头且没有可作为替代的清单时。 |
| 无法通过私有渠道更新 | 设备尝试自我关联到私有渠道,但渠道设置中禁用了设备自我关联(allow_device_self_set is false)且渠道不是公共渠道。 |
| 渠道配置错误 | 渠道配置为禁用通过版本号自动更新(disable_auto_update: 'version_number'),但捆绑包的 min_update_version 字段为null,无法确定应该接收更新的设备。 |
| disableAutoUpdateMetadata | 自动更新已通过版本号元数据禁用。渠道要求设备的版本号至少为 min_update_version,但设备的当前版本号低于此阈值。 |
| disableAutoUpdateToMajor | 渠道设置 disable_auto_update: 'major' 防止更新将主版本号升级(例如,阻止 1.x.x 更新到 2.x.x)。 |
| disableAutoUpdateToMinor | 渠道设置 disable_auto_update: 'minor' 防止更新将次版本号升级(例如,阻止 1.2.x 更新到 1.3.x)。 |
| disableAutoUpdateToPatch | 渠道设置 disable_auto_update: 'patch' 防止更新将补丁版本号升级,或者允许在同一个主版本号.次版本号内进行补丁级别更新(例如,1.2.3 可以更新到 1.2.4,但不能更新到 1.2.2 或 1.3.0)。 |
| 缺失的包 | 该频道分配的包没有可下载的内容。这意味着包没有 external_url没有 r2_path它不是内置版本,并且没有可下载的清单项。 |
| 无频道或覆盖 | 没有配置此应用的默认频道,且设备上没有特定的频道覆盖。至少需要一个才能让更新工作。 |
| 速率限制 | 设备因过度请求而被速率限制。 |
| 密钥不匹配 | 设备的加密公钥与用来加密包的公钥不匹配。这会发生在以下情况之一:(1) 应用中的公钥与上传包时使用的公钥不同,或者(2) 您旋转了加密密钥但还没有更新所有设备。响应包含两个 capacitor.config.json 和 deviceKeyId __CAPGO_KEEP_0__ bundleKeyId (首四个字符的每个公共密钥)以帮助识别不匹配。要解决此问题,请确保在上传捆绑包时使用相同的密钥 pair(CLI 使用私钥),并在应用程序中使用相同的密钥 pair(capacitor.config.json包含公共密钥)。 |
来自设备的
标题:来自设备| code | 描述 |
|---|---|
| ping | 内部测试动作用于验证统计系统是否正常工作。 |
| get | 已将下载新版本的信息发送到设备。 |
| delete | 设备上已删除一个捆绑包。 |
| set | 设备上已设置一个捆绑包。 |
| __CAPGO_KEEP_0__ | 设置捆绑包失败。 |
| 设备已重置为捆绑包。 | __CAPGO_KEEP_0__ builtin 下载捆绑包 - 进度由 XX% (每 10% 增加) 指示。 |
| __CAPGO_KEEP_0__ | 新捆绑包下载完成。 |
| 设备开始下载更新清单。 | __CAPGO_KEEP_0__ |
| __CAPGO_KEEP_0__ | __CAPGO_KEEP_0__ |
| download_manifest_complete | 设备下载更新清单完成。 |
| download_zip_start | 设备开始下载压缩包存档。 |
| download_zip_complete | 设备下载压缩包存档完成。 |
| download_manifest_file_fail | 下载清单项失败;统计包中 version_name download_manifest_file_fail version:fileName 在"__CAPGO_KEEP_0__"的形式 |
| download_manifest_file_fail | 来定位资产。 |
| download_manifest_brotli_fail | Brotli 压缩的清单文件下载失败。 |
| download_fail | 新包下载失败。 |
| update_fail | 新包已安装,但调用失败。 notifyAppReady. |
| checksum_fail | 新包校验和失败。这可能是由于以下原因: 1) 校验和类型不匹配: 最新版本的 CLI 和插件(版本 5.10.0+、6.25.0+ 或 7+)使用 SHA256 校验和,而旧版本的插件使用 CRC32。如果您看到校验和失败,请检查校验和是否为 CRC32(一个较短的哈希值)而不是 SHA256。这通常表明包已使用旧版本的 CLI 上传。请在 Capgo 控制台中验证您的包版本 - 自版本 5.10.0/6.25.0/7 以来创建的包应使用 SHA256。如果您看到 CRC32 校验和,请确保您已安装最新的插件版本(CLI 会检查您的本地插件版本以确定应上传哪种校验和类型),然后升级您的 CLI 并重新上传包。 2) 加密密钥不匹配(在插件版本以下 8.3.0 或 5/6/7.38.0): 在旧版本的插件中,如果设备的公钥与用于加密包的密钥不匹配,解密将会失败并导致校验和失败。 checksum_fail请确认您的应用的公钥与上传包时使用的私钥匹配。升级到插件版本 8.3.0+(或 5/6/7.38.0+)将使服务器返回一个合适的错误,使诊断此问题更容易。 capacitor.config.json __CAPGO_KEEP_0__ keyMismatch __CAPGO_KEEP_0__ |
| windows_path_fail | 压缩包中包含非法的 Windows 路径的文件 |
| canonical_path_fail | 压缩包中文件路径不规范 |
| directory_path_fail | 压缩包中文件路径有错误 |
| unzip_fail | 解压失败 |
| low_mem_fail | 设备内存不足导致下载失败 |
| 应用切换到后台 | 应用进入后台状态。 |
| 应用已切换到前台 | 应用进入前台状态。 |
| 无法解密 | 下载的包未能解密。 |
| 获取频道 | 设备的当前通道被查询。 |
| 设置频道 | 设备已成功设置通道。 |
| 卸载 | 应用程序已卸载或Capgo数据已清除。 |
| blocked_by_server_url | Server.url已在您的capacitor配置中存在,这使得Capacitor以远程URL服务,而忽略本地文件,而我们的更新程序则是以本地文件为准。Server.url被Capacitor开发者认为在生产环境中是不良实践,会导致许多问题和插件无法正常工作。 |
捆绑状态
标题:捆绑状态SUCCESS:捆绑安装完成ERROR:捆绑安装或下载失败PENDING:下载完成,待发布DELETED:捆绑已删除,但仍然用于统计DOWNLOADING:当前下载捆绑
理解设备日志:
标题:理解设备日志:调试命令:
标题:调试命令:为Capgo云用户提供的调试命令。
npx @capgo/cli@latest app debug这将允许您检查应用程序中发生的所有事件,并在更新未发生时找到解决方案。
IOS
标题:IOS在Xcode中找到设备日志
Android:
标题:Android:在 Android Studio 中查找您的日志
解释日志
标题:解释日志Failed to download from=> 与之相同 下载失败notifyAppReady was not called, roll back current bundle=> 与上述相同 更新失败
在您的设备中找到下载的捆绑包
标题:在您的设备中找到下载的捆绑包iOS
标题:iOS要在 iOS 上调试,您需要在计算机上将应用程序导出,方法如下:
Xcode 中有一个内置功能,可以在 iOS 设备上检查开发者安装的应用程序的文件系统。

要实现这一点:
- 将您的设备连接到 Mac 并在 Xcode 菜单栏中选择窗口 > 设备。
- 在设备部分的左侧面板中选择您的设备。
- 这将显示该设备的开发者安装的应用程序列表。
- 选择要检查的应用程序,然后选择屏幕底部附近的 3 个点图标。
- 您可以通过选择下载该文件系统的快照来查看当前文件系统。

选择 Download Container… 将下载并导出文件系统的快照作为一个 .xcappdata 文件,您可以通过它浏览。

右键单击此文件并选择显示包内容以打开文件夹。
打开应用程序数据文件夹,您应该现在看到几个文件夹,如文档、库、tmp等。

然后您会在2个文件夹中找到一个版本:
library/NoCloud/ionic_built_snapshots 在应用程序重启后是必要的
并 documents/versions 用于热重载
Android
标题:“Android”为了在Android上调试,您需要从Android Studio访问设备:
- 单击“视图”> “工具窗口”> “设备文件浏览器”或单击工具窗口栏上的“设备文件浏览器”按钮以打开“设备文件浏览器”。
- 从下拉列表中选择一个设备。
- 打开路径 data/data/APP_NAME/ 在哪里 APP_NAME是您的应用程序ID。

然后找到 versions 文件夹以查看所有版本