跳转至正文
适用于患者端和临床类应用

无需等待应用商店审核,即可修复患者端和临床类应用

当修复只涉及 Capacitor 应用的 Web 层时,将其作为加密的 live update 发布。在 staging channel 上测试,分阶段推送,并为合规团队保留每次发布记录。

支持 HIPAA 计划的 BAA 协议
SOC 2 Type II 与 ISO 27001 (企业版)
经过加密与签名的 bundles

为何医疗团队需要 live update 通道

Web 层修复无需等待新二进制文件

仅通过应用商店修复的路径

临床医生报告药品或登记界面标签错误。修复方案仅需几行 JavaScript。

如果仅通过商店流程,你需要构建新二进制文件、提交并等待。商店审核通常需要 24-48 小时,有时甚至更久。

即使审核通过,患者和医护人员仍需安装更新才能看到修复内容。

商店审核成为了修复进度的阻碍

预约、登记和提醒界面变动频繁。每一次 Web 层修复都要经历构建新二进制文件、商店审核和用户更新。

HIPAA 审核关注数据流向

审核人员希望了解更新程序发送了什么、数据流向何处,以及你是否可以将数据保留在自己的基础设施中。

支持团队需要明确当前运行的版本

当临床医生报告问题时,你的团队必须查明该设备运行的是哪个 bundle 和 native 版本。

每一次变更都需要留痕

合规团队需要了解变更的发布者、发布时间以及发布到了哪个 Channel。

Capgo 为医疗团队提供的价值

一种受控的患者端 App 修复发布方式

提供加密的 bundle、分阶段发布以及可供合规负责人审核的 updater 设置。

直接修复 Web 层

使用 Capgo CLI 上传修复后的 JavaScript、HTML 和 CSS。默认情况下,设备会下载 bundle 并在 App 进入后台时应用。Native code 的变更仍需通过应用商店发布。

BAA 与 HIPAA 审核选项

Capgo 与医疗客户签署 BAA。Updater 不会发送姓名、电子邮件或病历号,您还可以限制或更改其发送的数据内容。

BAA 与 HIPAA 选项
  • 用于 updater 流量的欧盟端点
  • 禁用统计数据或将其发送至您自己的 endpoint
  • 可在 Enterprise 版本中获得授权的自托管方案

端到端加密

使用 CLI 创建密钥对。Bundles 在 upload 前会进行加密,并在安装前由 App 进行校验。Capgo、存储提供商和 CDN 只能看到密文。

加密文档

分阶段发布与自动回滚

先向一小部分设备发送 bundle,检查安装与失败数据,随后逐步扩大范围。Auto-pause 功能可以在失败率上升时停止发布;若 bundle 未调用 notifyAppReady(),则会在设备端自动回滚。

首次发布步骤 5%
检查失败情况后 25%
已推广至所有设备 100%

工作原理

医疗团队如何通过 Capgo 发布修复补丁

只需一次性配置好符合合规审查的 updater,即可通过 staging 环境和分阶段生产发布,逐个推送 Web 层修复。以下所有命令均来自 Capgo 文档。

  1. 配置符合合规审查的 updater

    将所有三个 plugin 端点指向 EU host;如果不允许托管统计数据,请将 statsUrl 设置为空字符串。切勿设置映射到患者身份的自定义 ID。请在 store build 中发布此配置。

    // capacitor.config.ts
    plugins: {
      CapacitorUpdater: {
        updateUrl: 'https://plugin.eu.capgo.app/updates',
        // use statsUrl: '' to disable hosted statistics
        statsUrl: 'https://plugin.eu.capgo.app/stats',
        channelUrl: 'https://plugin.eu.capgo.app/channel_self',
      },
    }
    BAA 与 HIPAA 选项
  2. 一次性创建加密密钥

    创建密钥对,把公钥保存到你的 Capacitor 配置中并同步。私钥放在 CI secrets 里,切勿提交到代码仓库。

    npx @capgo/cli@latest key create
    npx @capgo/cli@latest key save --key ./.capgo_key_v2.pub
    npx cap sync
    加密文档
  3. 将修复补丁 upload 至 staging channel

    将加密后的 bundle upload 至 staging channel,并在推送到患者端之前在 QA 设备上进行检查。

    npx @capgo/cli@latest bundle upload --channel staging --key-v2
    Channels 文档
  4. 分阶段发布到生产环境

    先从 5% 的生产设备开始。当安装和失败数据表现正常时,再将 bundle 推送给所有人。否则,请回滚该批次。

    npx @capgo/cli@latest bundle upload --channel production --key-v2 --rollout 5
    npx @capgo/cli@latest channel set production --rollout-promote
    # or, if something looks wrong
    npx @capgo/cli@latest channel set production --rollout-rollback
    渐进式发布文档

可追溯性

明确每个设备运行的 code

将每个 bundle 与其 commit 关联,保留发布人员的审计日志,并在 App 内显示当前运行的版本。

将 bundle 与 commit 关联

在 upload 时使用 --comment 和 --link 为每个 bundle 添加注释和链接,从而实现已部署 bundle 的源码溯源。

# Attach the commit to each bundle
npx @capgo/cli bundle upload \
  --comment "Fix dosage rounding ($(git rev-parse --short HEAD))" \
  --link "https://github.com/your-org/your-app/commit/$(git rev-parse HEAD)"

在 App 中显示运行版本

通过 CapacitorUpdater.current() 读取当前的 bundle 和 Native 版本,并将其显示在设置或支持页面上,以便工作人员向技术支持反馈其运行的版本。

// Show version info to clinical staff
const info = await CapacitorUpdater.current()

// Display in app settings
console.log(info.bundle.version)  // "2.4.1"
console.log(info.native)          // Native app version

安全与合规详情

您可以向合规负责人及供应商审核人员提供的信息

BAA 与 HIPAA 审核选项

使用欧盟端点、禁用或自托管更新统计数据,或迁移至授权的自托管模式。合规负责人可决定最适合的配置。

Capgo 与 HIPAA
SOC 2

SOC 2 Type II 与 ISO 27001 (Enterprise 方案)

Enterprise 方案包含 SOC 2 Type II、ISO 27001 和 SSO。DPA 和子处理器列表已公开,供您进行供应商审核。

可审计的开源代码

Updater 插件和 Capgo 后端均在 GitHub 上开源。您的团队可以阅读运行在患者设备上的 code。

使用 Capacitor 构建的应用

患者流程的变化速度远快于 App 审核

预约、健康记录和福利类 App 无需破坏 Native shell 的稳定性,即可更新问诊界面、预约指南、医生消息及患者教育内容。

HotDoc 应用图标 医疗

HotDoc

预约流程中,预约说明和信息填写内容需要频繁变更。

Google Play 安装量
210 万
应用商店评分
4.6
Conecte SUS 应用图标 医疗

连接 SUS

包含公共指南和文档流的健康记录应用,需保持内容实时更新。

Google Play 安装量
27.7M
应用商店评分
4.6
Odontoprev 应用图标 医疗

Odontoprev

福利应用,需对服务商、资格校验及支持流程进行精细化补丁更新。

Google Play 安装量
1.9M
应用商店评分
4.5

客户证言

使用 Capgo 交付的团队怎么说

5.0/5 开发者团队评分 9,400+ 团队 查看评价
Sergiu S 的肖像

Sergiu S

drivolino GmbH 首席开发者

“Capgo Capacitor Updater 插件彻底改变了我们的更新发布方式。过去需要几天的工作,现在只需几分钟。”

Kapil

NuTriQ 创始人

“无需等待完整的 App Store 审核周期,就能即时推送生产环境的 OTA 更新,这为我们带来了巨大的运营优势。”

no-tone @ Webincode

开发者,Webincode

“能把特定 Device ID 加入指定分组,并只向这些分组推送更改,太救命了。”

常见问题

医疗保健团队常见问题

为准备安全审查或 HIPAA 审计的工程团队提供简明解答。

Capgo 符合 HIPAA 标准吗?你们签署 BAA 吗?

Capgo 与医疗客户签署商业伙伴协议 (BAA),且美国机构已在符合 HIPAA 标准的项目中使用 Capgo。更新数据量极小且仅限于设备范围。如果您的审查需要更多控制权,还可以使用欧盟端点、禁用统计数据、自托管统计端点,或迁移至授权的自托管方案。

BAA 和 HIPAA 选项

更新程序会向 Capgo 发送哪些数据?

运行数据:app ID、随机的 app 范围设备 ID、平台、bundle 和 native 版本、OS 版本、plugin 版本以及更新事件。IP 地址仅用于传输层。不会发送姓名、电子邮件、账户 ID 或医疗记录编号。请勿设置映射到患者或用户的自定义 ID。

隐私和数据收集

更新数据可以保留在欧盟或我们自己的基础设施中吗?

可以。将 update、stats 和 channel 端点指向 plugin.eu.capgo.app,即可将 plugin 数据路径保留在欧洲。您也可以将统计数据发送到您自己的端点。Enterprise 方案还提供专用、混合及授权的自托管选项。

欧盟数据存储位置

live update 可以更改我们 App 中的哪些内容?

仅限 Web 层:JavaScript、HTML、CSS 和资源文件。若涉及 Native code、插件或权限的更改,仍需通过 App Store 和 Google Play 进行新的 build。

哪些内容可以作为 live update 发布

我们如何向审计人员展示已发布的内容?

审计日志会记录 bundle upload、channel 变更以及成员变更。Channel 历史记录会列出所有已上线的 bundle,每个 bundle 都可以附带注释和 commit 链接。通过角色权限可以限制谁能 upload bundle 或更改 channel。

审计日志

为患者端 App 的修复提供更快的路径

在试用期间,您可以为自己的 App 配置 staging channel、加密 bundle 以及审核所需的 updater 配置。

14 天免费试用,无需信用卡。Enterprise 方案提供 BAA、SOC 2 Type II、ISO 27001、SSO 及自托管选项。