メインコンテンツへスキップ
患者向け・臨床向けアプリに

ストアの審査を待たずに、患者向け・臨床向けアプリの修正を

Capacitor アプリの Web レイヤーのみに修正を加える場合は、暗号化された live update として配信しましょう。ステージング用チャンネルでテストし、段階的にロールアウトを行い、コンプライアンスチームのためにすべてのリリース履歴を記録できます。

HIPAAプログラム向けにBAAを提供
SOC 2 Type II および ISO 27001 (Enterpriseプラン)
暗号化・署名済みのbundle

ケアチームが live update レーンを追加する理由

Webレイヤーの修正は新しいバイナリを待たない

ストアのみの修正フロー

医療従事者から、投薬や受付画面のラベルが間違っているとの報告がありました。修正には数行のJavaScriptがあれば十分です。

ストアのみのプロセスでは、新しいバイナリをビルドして申請し、待つことになります。ストア審査は通常24〜48時間、場合によってはそれ以上かかります。

しかし、承認を得た後でも、修正を反映させるには患者やスタッフが手動でアップデートをインストールする必要があります。

ストア審査が修正を妨げる

予約、受付、リマインダー画面は頻繁に変更されます。Webレイヤーの修正であっても、新しいバイナリの作成、ストア審査、ユーザーによる更新を待たなければなりません。

HIPAA審査におけるデータフローの確認

審査担当者は、アップデーターが何を送信し、どこへ送るのか、そして自社のインフラ内で完結できるのかを知りたがっています。

サポートには稼働中のバージョン把握が不可欠

医療従事者から問題が報告された際、チームは対象のデバイスがどのbundleとNative Buildのバージョンで動作しているかを特定しなければなりません。

すべての変更に記録を

コンプライアンスチームは、誰が、いつ、どのチャネルに変更をリリースしたのかを常に把握する必要があります。

Capgo がヘルスケアチームにもたらすもの

患者向けアプリの修正を安全にリリースする方法

暗号化されたbundle、段階的な公開、コンプライアンス担当者が確認可能なupdater設定。

Webレイヤーを直接パッチ

Capgo CLI を使用して、修正済みのJavaScript、HTML、CSSをuploadします。デフォルトでは、デバイスはbundleをdownloadし、アプリがバックグラウンドに移行した際に適用します。Native code の変更には、引き続き各ストアでの審査が必要です。

BAAとHIPAAレビューの選択肢

Capgo はヘルスケアのお客様とBAAを締結しています。updaterは氏名、メールアドレス、診療録番号などを送信せず、送信データの制限や制御も可能です。

BAAおよびHIPAAオプション
  • updaterトラフィック用のEUエンドポイント
  • 統計情報の無効化、または独自のendpointへの送信が可能
  • Enterpriseプランによるセルフホスティングのライセンス提供

エンドツーエンド暗号化

CLIでキーペアを作成します。Bundleはupload前に暗号化され、インストール前にアプリ側で検証されます。Capgo、ストレージプロバイダー、CDNからは暗号文しか見えません。

暗号化のドキュメント

段階的なロールアウトと自動ロールバック

一部のデバイスにのみBundleを配信し、インストール状況やエラー率を確認してから対象を拡大します。Auto-pause機能により、エラー率の上昇時にロールアウトを自動停止できるほか、notifyAppReady()が呼び出されないBundleはデバイス上で自動的にロールバックされます。

最初のロールアウトステップ 5%
エラー確認後 25%
全デバイスへ展開済み 100%

仕組み

Capgo を使ったヘルスケアチームの修正デプロイ方法

レビュー内容に合わせてアップデーターを一度設定すれば、あとは各Webレイヤーの修正をステージング経由で、段階的なプロダクションロールアウトで配信できます。以下のコマンドはすべて Capgo のドキュメントに基づいています。

  1. レビューに合わせてアップデーターを設定する

    3つのプラグインエンドポイントすべてをEUホストに向けるか、ホストされた統計が許可されていない場合は statsUrl を空文字列に設定してください。患者に紐づくカスタムIDは設定しないでください。この設定はストアビルドに含めて配信します。

    // 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のシークレットに保管し、リポジトリには決して含めないでください。

    npx @capgo/cli@latest key create
    npx @capgo/cli@latest key save --key ./.capgo_key_v2.pub
    npx cap sync
    暗号化のドキュメント
  3. ステージングチャネルに修正をアップロードする

    暗号化されたbundleをステージングチャネルにアップロードし、患者に届く前にQAデバイスで動作を確認します。

    npx @capgo/cli@latest bundle upload --channel staging --key-v2
    チャネルのドキュメント
  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をコミットに紐付け、誰が配信したかの監査ログを保持し、アプリ内で実行中のバージョンを表示します。

bundleをコミットに紐付け

アップロード時に --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)"

アプリ内で実行中のバージョンを表示

CapacitorUpdater.current() で現在のbundleとネイティブバージョンを取得し、設定画面やサポート画面に表示します。スタッフがサポートに使用中のバージョンを伝えられるようになります。

// 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レビューの選択肢

EUエンドポイントの利用、アップデーター統計の無効化やセルフホスト、ライセンス版セルフホスティングへの移行が可能です。どの構成が合うかはコンプライアンス責任者が判断します。

CapgoとHIPAA
SOC 2準拠

SOC 2 Type II および ISO 27001 (Enterpriseプラン)

SOC 2 Type II、ISO 27001、SSOはEnterpriseプランに含まれます。DPAとサブプロセッサー一覧はベンダー審査用に公開されています。

監査できるオープンソース

アップデータープラグインとCapgoバックエンドはGitHubでオープンソースです。患者のデバイス上で動作するcodeをチームが確認できます。

Capacitor で構築されたアプリ

患者フローはアプリ審査より速く変わる

予約、診療記録、福利厚生などのアプリでは、ネイティブシェルを不安定にすることなく、受付画面、予約手順、プロバイダーとのメッセージング、患者向け教育コンテンツを更新できます。

HotDocのアプリアイコン 医療

HotDoc

予約手順や入力フォームの文言が頻繁に変更される予約フロー。

Google Play インストール数
210万
ストア評価
4.6
Conecte SUSのアプリアイコン 医療

SUSを接続

常に最新の状態に保つ必要がある、公開ガイダンスやドキュメントフローを備えた健康記録アプリ。

Google Play インストール数
2770万
ストア評価
4.6
Odontoprev アプリのアイコン 医療

Odontoprev

プロバイダー、資格、サポートの各ジャーニーにおいて、慎重なパッチ適用が求められる福利厚生アプリ。

Google Play インストール数
190万
ストア評価
4.5

導入実績

Capgo を活用するチームの声

5.0/5 開発チームによる評価 9,400+ チーム数 レビューを読む
Sergiu Sのポートレート

Sergiu S

リードデベロッパー、drivolino GmbH

“Capgo Capacitor Updater pluginのおかげで、アップデートの配信方法が完全に変わりました。以前は何日もかかっていた作業が、今ではわずか数分で終わります。”

Kapil

NuTriQ 創業者

「本番環境のOTAアップデートを、App Storeの審査サイクル全体を待たずに即座に配信できることは、運用面で非常に大きな強みです。」

no-tone @ Webincode

Webincode 開発者

「Device IDを特定のグループに追加して、そのグループにだけ変更をプッシュできるのは本当に助かります。」

よくある質問

ヘルスケアチームからのよくある質問

セキュリティ審査やHIPAA準拠の確認を行うエンジニアリングチーム向けに回答します。

Capgo は HIPAA に準拠していますか? BAA の締結は可能ですか?

Capgo はヘルスケアのお客様と Business Associate Agreement (BAA) を締結しています。また、米国の組織ではすでに HIPAA 準拠のプログラム内で Capgo を運用しています。アップデーターが扱うデータは最小限かつデバイス単位に限定されています。より厳格な制御が必要な場合は、EU エンドポイントの使用、統計データの無効化、統計エンドポイントのセルフホスト、またはライセンス版のセルフホストへの移行が可能です。

BAA および HIPAA のオプション

アップデーターは Capgo にどのようなデータを送信しますか?

運用データとして、app ID、ランダムなアプリ単位のデバイス ID、プラットフォーム、bundle および Native Build のバージョン、OS バージョン、プラグインのバージョン、およびアップデートイベントを送信します。IP アドレスはトランスポート層で使用されます。氏名、メールアドレス、アカウント ID、または診療録番号(MRN)が送信されることはありません。患者やユーザーに紐付くカスタム ID を設定しないでください。

プライバシーとデータ収集について

アップデートデータを EU 内、または自社インフラ内に保持することはできますか?

はい。アップデート、統計、および channel のエンドポイントを plugin.eu.capgo.app に向けることで、プラグインのデータパスを欧州内に保持できます。また、統計データを独自の自社エンドポイントに送信することも可能です。Enterprise プランでは、専用環境、ハイブリッド構成、およびライセンス版のセルフホストオプションが利用できます。

EU データロケーション

live update でアプリの何を変更できますか?

変更できるのは Web レイヤー(JavaScript、HTML、CSS、アセット)のみです。ネイティブの code、プラグイン、権限の変更には、引き続き App Store と Google Play 経由の新しいビルドが必要です。

何を live update として配信できるか

監査人に配信内容をどう示せばよいですか?

監査ログには、bundle のアップロード、channel の変更、メンバーの変更が記録されます。channel の履歴には、公開されていたすべての bundle が一覧表示され、各 bundle にはコメントと commit リンクを付けられます。ロールによって、bundle をアップロードしたり channel を変更できるユーザーを制限できます。

監査ログ

患者向けアプリの修正をより迅速に

トライアル期間中に、ご自身のアプリで staging channel、暗号化された bundle、審査に必要な updater config をセットアップできます。

14日間の無料トライアル(クレジットカード不要)。Enterpriseプランでは、BAA、SOC 2 Type II、ISO 27001、SSO、およびセルフホスティングオプションに対応しています。