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개를 초과하면 빌드를 실패시킵니다.