Delta更新
复制一个包含安装步骤和本插件的完整 Markdown 指南的设置提示。
Capgo的实时更新系统可以通过仅发送更改的文件来更快、更高效地交付更新,而不是整个 JS 包。
这尤其有利于使用较慢或带宽受限网络连接的用户,因为它最小化了需要下载的数据量。
应用大型资产(如图片或视频)时,尽管它们很少变化,但它们只会下载一次。
如何 Delta (清单) 更新工作
如何Delta(清单)更新工作Delta(manifest)更新在Capgo中由您应用程序中安装的Capgo插件处理。 当您使用Capgo上传应用程序的新版本时, --delta 标志,Capgo 的功能是:
- 每个文件在您的构建中都将单独上传
- 每个文件都生成校验和
- 在 Capgo 中,会创建一个新的 JSON 清单,列出所有文件及其校验和
- 本清单将上传到Capgo数据库
当设备运行您的应用程序时,检查更新时,Capgo 插件会从服务器接收新的清单。它将此清单与当前的清单进行比较,根据校验和和文件路径确定哪些文件已更改。
该插件然后只下载改变的文件,而不是整个JS包。它通过将下载的文件与它已经有的未改变的文件结合起来,重建了应用程序的新版本。
启用Delta(Manifest)更新
启用Delta(Manifest)更新要为您的Capgo应用启用Delta(manifest)更新,请简单地使用 --delta 标志上传新版本时:
npx @capgo/cli@latest bundle upload --delta如果 autoUpdate 设置为即刻应用模式("atInstall", "onLaunch"或 "always"),则__CAPGO_KEEP_0__会检测到它。在非交互环境中,它会自动发送Delta(清单)更新,而在交互环境中,它会在上传之前提示您确认。 capacitor.config, the CLI detects it. In non-interactive environments it sends Delta (manifest) updates automatically, and in interactive environments it prompts you to confirm before uploading. Legacy directUpdate config仍然被检测到。使用 --no-delta 强制进行一次完整的包上传。
Delta更新限制
标题:Delta更新限制- 空文件: CLI日志
Ignoring empty file...并排除零字节文件从Delta清单。它不会停止上传,因此添加一个空文件可以改变结果包而不停止部署。不要在Delta包路径中包含零字节文件。 - 路径中的空格: Delta上传在包路径包含一个空格之前会失败。重命名文件或目录以移除空格,然后上传Delta更新。
强制Delta(清单)更新
标题:强制Delta(清单)更新如果您想确保所有上传都是Delta(清单)更新,并防止任何意外的完整包上传,则可以使用 --delta-only flag:
npx @capgo/cli@latest bundle upload --delta-only当 --delta-only 使用时,Capgo 将仅上传单个文件并生成清单。任何不支持 Delta(清单)更新的设备都无法下载更新。
您可能想使用 --delta-only if:
- 您总是希望使用 Delta(清单)更新,并且不希望允许全包上传
- 您正在设置 CI/CD pipeline,并希望确保所有自动上传都是 Delta(清单)
- 您的应用程序很大,带宽受限,因此需要最小化上传/下载大小
如果您需要在设置了时进行全包上传,仅需运行上传命令而不 --delta-only __CAPGO_KEEP_0__ --delta-only. 这将覆盖单次上传的设置,使您能够在需要时推送完整的捆绑包。
Troubleshooting
故障排除如果 Delta (清单) 更新似乎不起作用(即设备始终下载完整的 JS 捆绑包,即使有小变化),请检查以下内容:
- 您正在使用
--delta每次上传新版本时都要使用 - 如果使用
--delta-only请确保没有意外遗漏--delta您的设备正在运行最新版本的 - Your device is running the latest version of the Capgo plugin
- Your device has a stable network connection and can reach the Capgo servers
You can also use the Capgo webapp to check the details of your last upload:
- 前往 webapp
- 点击您的应用
- 点击统计条中的包数量
- 选择最后一个包
- 检查
Partial字段
如果您仍然遇到问题,请联系Capgo支持团队,进一步协助。他们可以检查服务器日志以确认您的Delta(清单)上传正在正确处理,并且设备正在接收更新的清单。
就这样!这个标志告诉__CAPGO_KEEP_0__执行单个文件上传和清单生成所需的Delta(清单)更新。 --delta flag tells Capgo to perform the individual file uploads and manifest generation needed for Delta (manifest) updates.
Note that you need to use --delta 每次你上传一个你想作为Delta(manifest)更新的新版本。如果你省略了标志,Capgo会上传整个JS包作为一个单独的文件,设备会下载整个包,即使只有一个小部分发生了变化。
继续使用Delta更新
标题:继续使用Delta更新如果你正在使用 Delta更新 上下文:产品/定价页面。角色:短的UI标签或导航项。见于:企业产品页面。消息键`enterprise_delta_updates`(企业Delta更新)。 Capgo Live Updates Capgo Live Updates 上下文:实时更新产品页面。角色:短的UI标签或导航项。见于:实时更新页面。保留Capgo产品/品牌和开发者术语完全不变。消息键`live_update_hero_badge`(实时更新英雄徽标)。 用于__CAPGO_KEEP_0__ Live Updates中的产品工作流程 概览 用于概览中的实现细节, 更新行为 为更新行为的实现细节 更新类型 为更新类型的实现细节