SDK · 01 / 05

RevenueCat

Apple StoreKit / Google Play Billing のレシートを検証し、どの機能を解放すべきか判定するために使用。

常時オン · 購入のみ
項目内容
送信するもの匿名 UUID (端末ごと) · 購入レシート · 購読ステータス
決して見えないもの月経データ · 體質タグ · 症状 · 名前 · メール · IP(Apple/Google 経由でプロキシ)
いつ購入時 · アプリ起動時(購読ステータス更新)
リージョンUS-East · SOC 2 Type II 下で処理
スイッチなし — 課金に必要。送信されるデータは Apple/Google がすでに見ている内容と機能的に同じ。

SDK · 02 / 05

Health SDK(HealthKit / Health Connect)

月経データを Apple Health(iOS)または Health Connect(Android)と双方向同期します。純粋な OS bridge — 外部サーバはなく、データは OS のヘルスデータベース外に出ません。

オプトイン · OS 同期のみ
項目内容
送信するもの書き込み:月経フローと開始日。読み取り:既存の MenstrualFlow レコード。どちらも HealthKit / Health Connect サンドボックス内に留まります。
決して見えないもの外部サーバ · クラウドバックアップエンドポイント(Health データとバックアップは分離)
いつ「設定 → ヘルス連携」でオンにした場合のみ
場所端末ローカルのみ(OS が管理)
スイッチ設定 → ヘルス連携 → トグル。デフォルトはオフ。

SDK · 03 / 05

Sentry

クラッシュレポーター。デフォルト OFF。ユーザーが設定 → 改善にご協力ください で明示的に有効化する必要があります。

オプトイン · デフォルト OFF
項目内容
送信するものスタックトレース · デバイスモデル · OS バージョン · アプリバージョン · 直近 20 件のナビゲーションイベントのパンくず(画面名のみ、データなし)
決して見えないもの月経データ · 症状 · 體質 · UI テキスト内容 · スクリーンショット
いつクラッシュ時のみ · ユーザーがオプトインした場合のみ
リージョンSentry.io のクラウド(SaaS)でホスト · オプトイン
スイッチ設定 → 改善にご協力ください → トグル。すべてのインストールでデフォルト OFF。

SDK · 04 / 05

Sign-in-with-Apple

iCloud バックアップをオプトインした場合のみ使用。暗号化済みブロブを Apple ID に紐付けます。私たちはあなたのメールアドレスを見ません。

オプトイン · バックアップのみ
項目内容
送信するものApple が発行する不透明なユーザー識別子(選択すれば private relay メール)
決して見えないもの実際のメール(Apple がリレー)· 月経データ · デバイス識別子
いつ設定で「iCloud にバックアップ」をタップしたときの一回限り
スイッチいつでも 設定 → バックアップ → 切断 でサインアウト

SDK · 05 / 05

google_sign_in(Android のみ)

Android での Sign-in-with-Apple のミラー:Google Drive バックアップをオプトインした場合のみ。

オプトイン · バックアップのみ
項目内容
送信するものGoogle が発行する不透明なユーザー識別子 · OAuth スコープ:drive.appdata のみ
決して見えないものアプリサンドボックス外の Drive 内容 · 連絡先 · カレンダー · メール内容
いつ「Google Drive にバックアップ」をタップしたときの一回限り
スイッチいつでも 設定 → バックアップ → 切断 · myaccount.google.com で取り消し

上限ポリシー

SDK 5 つは上限であり、目標ではありません。

6 つ目を追加したい場合、既存の 5 つのうち 1 つを先に外す必要があります。上限は CI で強制されます:scripts/check-sdk-count.sh はネットワーク SDK 数が 5 を超えるとビルドを失敗させます。