跳转到内容

调试

代码描述
InvalidIp用户位于 Google 数据中心且更新小于 4 小时。这样做是为了防止 Google 机器人的设备计入您帐户的设备数。
needPlanUpgrade(以前称为 needUpgrade)表示您已达到计划的限制,在您升级或下个月之前,设备将不会收到更新。
noNew设备具有最新可用版本。
disablePlatformIos设备在 iOS 平台上,但在频道设置中已禁用该平台。
disablePlatformAndroid设备在 Android 平台上,但在频道设置中已禁用该平台。
disableAutoUpdate”major” | “minor” | “version_number” | “none”
disableAutoUpdateUnderNative设备版本为 (1.2.3),频道有一个要发送的更新 (1.2.2) 低于设备版本,但在频道设置中已禁用。
disableDevBuild设备有开发构建,但在频道设置中已禁用。
disableEmulator设备是模拟器,但在频道设置中已禁用。
cannotGetBundle无法为 bundle 下载生成有效的签名 URL。当 bundle URL 生成失败或返回无效 URL(不以 http/https 开头)且没有可用的清单作为后备时会发生这种情况。
cannotUpdateViaPrivateChannel设备尝试自我关联到私有频道,但频道设置不允许设备自我关联(allow_device_self_set 为 false)且频道不是公共的。
channelMisconfigured频道配置为按版本号禁用自动更新(disable_auto_update: 'version_number'),但 bundle 的 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' 阻止会增加补丁版本号的更新,或仅允许在相同 major.minor 版本内的补丁级更新(例如,1.2.3 可以更新到 1.2.4 但不能更新到 1.2.2 或 1.3.0)。
missingBundle分配给此频道的 bundle 没有可下载的内容。这意味着 bundle 没有 external_url,没有 r2_path,它不是内置版本,并且没有可供下载的清单条目。
NoChannelOrOverride此应用未配置默认频道,并且设备没有分配特定的频道覆盖。必须至少存在一个才能使更新工作。
rateLimited设备由于过多请求而受到速率限制。
代码描述
ping用于验证统计系统是否正常工作的内部测试操作。
get下载新版本的信息已发送到设备。
delete设备上已删除一个 bundle。
set设备上已设置一个 bundle。
set_failbundle 设置失败。
reset设备重置为 builtin bundle。
download_XX已下载新 bundle - XX% 表示进度(以 10% 递增)。
download_complete新 bundle 已完成下载。
download_manifest_start设备开始下载更新清单。
download_manifest_complete设备完成下载更新清单。
download_zip_start设备开始下载 bundle 归档。
download_zip_complete设备完成下载 bundle 归档。
download_manifest_file_fail一个清单条目下载失败;统计负载将 version_nameversion:fileName 的形式放置以确定资产。
download_manifest_checksum_fail清单文件校验和验证失败。
download_manifest_brotli_fail清单文件使用 Brotli 解压失败。
download_fail新 bundle 下载失败。
update_fail新 bundle 已安装但未能调用 notifyAppReady
checksum_fail新 bundle 校验和验证失败。如果您使用 Capgo Cloud 并遇到此错误,这通常意味着您的应用版本期望不同的校验和类型。最新版本的 CLI 和插件(版本 5.10.0+、6.25.0+ 或 7+)使用 SHA256 校验和,而旧插件使用 CRC32。如果看到校验和失败,请检查校验和是否为 CRC32(较短的哈希)而不是 SHA256。这通常表示 bundle 是用旧版本的 CLI 上传的。在 Capgo 仪表板中验证您的 bundle 版本 - 自版本 5.10.0/6.25.0/7 以来创建的 bundle 应使用 SHA256。如果您看到 CRC32 校验和,请确保在本地安装了最新的插件版本(CLI 检查您的本地插件版本以确定要上传哪种校验和类型),然后升级您的 CLI 并重新上传 bundle。
windows_path_failzip 中包含非法的 Windows 路径文件
canonical_path_fail文件路径不是规范的
directory_path_failzip 文件路径中存在错误
unzip_fail解压失败
low_mem_fail由于设备内存不足导致下载失败
app_moved_to_background应用程序进入后台状态。
app_moved_to_foreground应用程序进入前台状态。
decrypt_fail解密下载的 bundle 失败。
getChannel查询设备的当前频道。
setChannel成功为设备设置频道。
uninstall应用程序已卸载或清除 Capgo 数据。
blocked_by_server_urlcapacitor 配置中存在 Server.url,这使 Capacitor 提供远程 url 并忽略本地文件,而我们的更新程序是为本地文件功能设计的。Server.url 被 Capacitor 制造商视为生产中的不良做法,并将导致许多问题和插件无法正常工作。
  • SUCCESS: 安装 bundle 完成
  • ERROR: 安装或下载失败
  • PENDING: 下载完成,待发布
  • DELETED: Bundle 已删除,仍为统计信息呈现
  • DOWNLOADING: 当前正在下载 bundle

Capgo 云用户有一个调试命令。

Terminal window
npx @capgo/cli@latest app debug

这将允许您检查应用中发生的所有事件,并在更新未发生时找到解决方案。

在 Xcode 上查找您的日志

在 Android Studio 上查找您的日志

  • Failed to download from =>download_fail 相同
  • notifyAppReady was not called, roll back current bundle => 与 update_fail 相同

要在 iOS 上调试,您需要将应用转储到计算机上,可以这样做:

Xcode 具有内置功能,用于检查 iOS 设备上开发者安装的应用的文件系统。 Xcode Window 菜单显示设备和模拟器选项

要实现这一点:

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

Xcode Devices 面板显示应用容器下载选项

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

已下载的 xcappdata 文件及显示包内容上下文菜单

右键单击此文件并选择 Show Package Contents 以打开文件夹。

打开 App Data 文件夹,您现在应该看到几个文件夹,如 Documents、Library、tmp 等。

iOS 应用容器文件夹结构显示 Documents 和 Library 文件夹

然后您将在 2 个文件夹中找到一个版本:

library/NoCloud/ionic_built_snapshots 在应用重启后是必需的

以及 documents/versions 用于热重载

要在 Android 上调试,您需要从 Android Studio 访问设备:

  • 单击 View > Tool Windows > Device File Explorer 或单击工具窗口栏中的 Device File Explorer 按钮以打开 Device File Explorer。
  • 从下拉列表中选择一个设备。
  • 打开路径 data/data/APP_NAME/ 其中 APP_NAME 是您的应用 ID。

Android Studio Device File Explorer 显示应用数据目录

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