我很高兴宣布 Self-hosted Live Updates 正式发布,这标志着 Capgo Live Updates 的最新演进。
虽然许多企业目前使用 Live Updates SDK 来获取应用程序最新的 JavaScript、HTML 和 CSS 更新,但部分企业可能因公司政策、行业法规或地域限制而受阻。借助 Self-hosted Live Updates,您现在可以通过自己的基础设施分发 Web 构建产物。
这意味着您可以避免 Apple Store 审核带来的延迟,更快地修复 bug 和修改内容,并确保用户始终运行您应用的最新版本。此外,我收到许多大型企业的反馈,他们希望利用 Live Updates,但因严格的合规标准而面临挑战。得益于 Self-hosted Live Updates,这一问题已成为过去。
自托管 Live Updates 如何工作?
使用以下方法部署 Capgo-hosted Live Updates 非常简单: Capgo SDK。至于 Self-hosted Live Updates,我已在 Capgo CLI 中增强了必要功能,以便在您的基础设施上进行配置。
为确保向最终用户安全且协调地交付最新的 web build 产物,Capgo 现在允许 Capacitor Live Updates 插件采用公钥/私钥配对。在使用 Self-hosted Live Updates 时,会执行额外的握手过程,以确认通过插件从企业基础设施下载的产物未被篡改。

以下概述了建立密钥配对以及向最终用户交付更新体验的后续步骤。
一次性密钥对设置
要生成公钥/私钥对,企业可以使用以下 Capgo Cloud CLI 命令:
npx @capgo/cli@latest key create
该命令将设置 CapacitorUpdater.privateKey 属性到您的配置文件中。
并生成 2 个密钥文件, capgo_key.pub 以及 capgo_key 位于您的项目根目录中。
此密钥对用于对更新进行签名,并在应用端验证更新。
自托管 Live Updates 工作流
要开始实施自托管 Live Update,企业首先需要对 bug 修复、内容更新或其他基于 Web 的 code 更改执行 Web 构建。接下来,必须使用一次性设置过程中获取的私钥对构建产物进行签名,最后将 bundle 上传到首选的存储位置。
首先构建你的 code:
npm run build
然后压缩你的构建产物:
npx @capgo/cli@latest bundle zip
然后加密你的 zip 文件:
npx @capgo/cli@latest bundle encrypt abc123.zip”
此命令会输出一个 ivSessionKey,你需要保存它用于下一步。
现在将加密后的 zip 文件上传到你的企业存储,并获取该 zip 文件的 URL。
然后必须通知 Capgo 有新的 Live Update 可供使用。这通过另一个 CLI 命令完成:
npx @capgo/cli@latest bundle upload --external=https://abc.com/app/updates/abc123.zip --iv-session-key=YourKey
命令运行后,Capgo 会意识到有一个新的更新准备分发给应用用户。现在,当应用启动时,Live Updates 插件会检查 Capgo 以查看是否有需要拉取的更改。
Capgo 会向插件响应“是的,有可用更新”,然后 Live Updates 插件使用 `register` CLI 命令提供的 URL 位置下载新的 live update:
https://abc.com/app/updates/abc123.zip
组织的 API 从该位置返回 Live Update bundle,应用解密 zip 文件并应用 live update。搞定!
立即开始
我很高兴能将 Live Updates 的覆盖范围扩展到比以往更多的企业。组织和 Ionic 应用用户将很快认识到 Capgo 在安全分发空中应用更新方面的优势。
如需了解更多关于 Capgo 自托管 Live Update 的信息,您可以 查阅文档。准备好将即时应用更新直接部署给用户了吗? 立即注册!
继续探索 Self-hosted Live Updates
如果你正在使用 自托管 Live Updates 要规划迁移和企业运营,请将其与 Capgo 企业版 用于 Capgo Enterprise 中的产品工作流, Ionic Enterprise 插件替代方案 用于 Ionic Enterprise 插件替代方案的产品工作流, Capgo 替代方案 用于 Capgo 替代方案的产品工作流, Capgo 咨询 适用于 Capgo Consulting 的产品工作流,以及 Capgo 高级支持 适用于 Capgo Premium Support 的产品工作流。