🚀 需要专家帮助?
遇到复杂问题?我们的专家团队在这里帮助您!获取个人化支持、code 评估和针对您的具体需求的定制解决方案。
可复制
Here are some common issues you might encounter while using Capgo and how to resolve them.
🚀 需要专家帮助?
遇到复杂问题?我们的专家团队在这里帮助您!获取个人化支持、code 评估和针对您的具体需求的定制解决方案。
如果您的打包上传失败,请检查以下内容:
capacitor.config.ts 您是否从 Capgo 项目根目录运行上传命令Capgo CLI 提供了一些额外的标志来帮助解决常见的上传问题:
--tus: 使用 tus 可恢复上传协议 更可靠地上传大型捆绑包或在网络连接不稳定的情况下。 如果您的捆绑包超过 10MB 或您在一个不稳定的网络连接上,请考虑使用 --tus:
npx @capgo/cli@latest bundle upload --tus--package-json 和 --node-modules: 告诉 Capgo 在哪里找到您的根 package.json 和 node_modules 如果您的应用使用非标准结构,如单元仓库或npm工作区。传递到根目录的路径 package.json 并且 --node_modules 路径:
npx @capgo/cli@latest bundle upload --package-json=path/to/package.json --node_modules=path/to/node_modulesCapgo需要此信息来正确打包您的应用的依赖项。
您可以将这些标志与其他选项结合使用,如 --channel 根据需要。请参阅 Capgo CLI文档 了解可用上传选项的详细信息。
如果您仍然遇到上传问题,请联系 Capgo支持 如果您需要进一步的帮助,请联系我们。
如果您遇到与实时更新相关的问题,Capgo调试命令是一个有用的工具来帮助您排查问题。要使用它,请遵循以下步骤:
在您的项目目录中运行以下命令:
npx @capgo/cli@latest app debug在设备或模拟器上启动您的应用,并执行应该触发更新的操作(例如重新打开应用程序后上传新包)。
查看调试命令的输出。它将记录有关更新过程的信息,包括:
使用调试日志来确定问题出在哪里。例如:
CapacitorUpdater.notifyAppReady() 并且应用程序已经完全关闭并重新打开。调试命令特别适合于识别更新下载和安装过程中的问题。如果日志显示了预期的更新版本被找到但最终没有应用,重点是调试下载后的步骤。
除了Capgo调试命令外,Android、iOS和Electron的原生日志可以提供有价值的调试信息,尤其是针对原生更新过程中的问题。
要访问Android日志,请访问:
Capgo 以找到SDK日志或者,您可以使用 adb logcat 命令并使用grep过滤日志 Capgo __CAPGO_KEEP_0__ __CAPGO_KEEP_1__将在更新过程中记录键事件,例如:
The Capgo SDK will log key events during the update process, such as:
您在日志中可能看到的常见Android特定问题包括:
要访问iOS日志:
Capgo 来找到SDK日志您也可以使用 log stream 命令在终端中并使用grep来过滤日志 Capgo 类似于 Android,__CAPGO_KEEP_0__ __CAPGO_KEEP_1__ 将记录 iOS 端的关键事件:
Similar to Android, the Capgo SDK will log key iOS-side events:
iOS相关问题可能在日志中被识别出:
对于Electron应用,检查主进程和渲染进程输出:
bun run electron:dev 或 bun run electron:serve并在启动、更新检查和网络错误期间监视终端输出。Console.app 并在应用程序名称上过滤journalctl 为您的应用程序进程在调试更新时,比较主进程和渲染进程日志中的消息,以区分 Electron 引导问题和 Capgo 更新生命周期问题。
在各个平台上,原生日志提供了一个更低级别的更新过程视图,原生实现的更多详细信息。它们特别适合于识别发生在 Capgo JavaScript 层之外的问题。
在调试一个棘手的实时更新问题时,捕获 Capgo debug 日志和原生日志是很好的想法,以获得全面了解发生了什么的图景。两个日志一起会给你最好的机会来识别和解决问题。
如果您已上传一个捆绑包,但在设备上却看不到变化:
CapacitorUpdater.notifyAppReady() 检查您的设备是否已连接到互联网,并且 code debug 日志显示已下载更新。 尝试完全关闭并重新打开应用,因为更新只在新启动时才会应用。查看以下 部署实时更新 指南获取更多关于更新过程的详细信息。如果您仍然卡住,请使用 npx @capgo/cli@latest app debug 命令和本机日志来获取更多关于正在发生的事情的可见性。
如果您的日志显示后端错误,如 disable_auto_update_to_major, semver_error或 cannot_update_via_private_channel,请使用以下专门指南:
It explains what each common code means, why it happens, and how to fix it.
如果您遇到 Capgo SDK 安装问题,请确保:
对于 CI/CD pipeline 触发 Capgo 上传问题:
查看 CI/CD 集成 更多的故障排除提示,请参阅 npx @capgo/cli@latest app debug 您可以使用
如果您正在使用 故障排除 来规划存储和文件处理,连接它到 @capgo/capacitor-data-storage-sqlite for the implementation detail in @capgo/capacitor-data-storage-sqlite, 使用 @capgo/capacitor-data-storage-sqlite 为使用@capgo/capacitor-data-storage-sqlite的本地能力 @capgo/capacitor-file 为@capgo/capacitor-file的实现细节 使用@capgo/capacitor-file 为使用@capgo/capacitor-file的本地能力, 和 @capgo/capacitor-uploader 为@capgo/capacitor-uploader的实现细节。