d3ro-voice/docs/v3/play/README.md

6.3 KiB
Raw Blame History

D3RO Voice Google Play 제출 패키지

  • 기준일: 2026-08-25
  • 대상 패키지: com.d3ro.voice
  • 기본 언어: ko-KR
  • 보조 언어: en-US

이 디렉터리는 Google Play Console에 입력할 후보 문구와 제출 전 검증 게이트를 모은다. 초안은 콘솔에서 자동으로 제출해도 된다는 승인이 아니다. 실제 release AAB, Play가 서명한 설치본, 운영 provider 설정과 콘솔 질문을 다시 대조한 뒤 사람이 최종 선언해야 한다.

문서

  1. 01-store-listing.md: 한국어·영어 스토어 등록정보와 지원 정보
  2. 02-data-safety-draft.md: Data safety 데이터 유형별 초안과 검증 항목
  3. 03-app-content-draft.md: 광고, 앱 액세스, 등급, 금융 기능, 계정 삭제, AI·UGC, FGS 답변
  4. 04-release-checklist.md: 앱 생성부터 internal/closed/production까지의 출시 게이트
  5. 05-content-reporting-operations.md: AI 신고 검토·종결·보관·purge 운영 절차
  6. assets/feature-graphic/README.md: 1024×500 A-D 역사 후보와 imagegen canonical E의 원본·prompt·재현 절차·해시
  7. ../e2e/RED_E2E_500_CONTENT_REPORT.md: local Gateway→Edge→DB 650개 AI 신고 Red-path E2E

상태 표기

  • 확정: 현재 코드·정적 설정 또는 공개 운영 URL로 근거가 확인됐다.
  • 후보: 현재 구현과 맞는 콘솔 입력안이지만 실제 질문 문구와 다시 대조해야 한다.
  • 검증 필요: release AAB, provider 계약·설정, 실제 계정 또는 실기기 증거가 필요하다.
  • 차단: 해결 전에는 해당 선언이나 트랙 제출을 진행하면 안 된다.
  • <PLACEHOLDER_...>: 실제 계정·인증서·URL·영상 값으로 교체해야 한다. 그대로 제출하면 안 된다.

현재 사실 경계

  • Play Console 앱은 YUN CHAN 개인 개발자 계정에서 생성됐다: app ID 4976102237698469110, D3RO Voice, com.d3ro.voice, ko-KR, 앱·무료. 정책·수출법 선언은 사용자 action-time 확인 후 처리됐다. 앱 생성은 제출·internal track·production 승인과 다르다.
  • Android 소스는 API 36을 target/compile하고 microphone foreground service, Google Mobile Ads, Firebase Cloud Messaging, Google Play Billing을 포함한다.
  • 공개 개인정보처리방침, 이용약관, 계정 삭제 페이지는 아래 canonical URL을 사용한다. 제출 직전 익명 브라우저에서 다시 확인한다.
    • https://d3ro.chanpaca.net/privacy/
    • https://d3ro.chanpaca.net/terms/
    • https://d3ro.chanpaca.net/delete-account/
  • 현재 작업공간에는 Play 제출용 production AAB가 없다. debug/E2E APK 또는 과거 self-hosted APK는 Play release 증거가 아니다.
  • D3RO legacy/adaptive/monochrome launcher resource와 512×512 Play icon source는 반영됐다. JDK 17 양 ABI debug build, 기존 데이터 보존 update install과 Pixel Launcher emulator의 adaptive circle mask는 GREEN이다. proof는 docs/v3/play/assets/proof/d3ro-icon-pixel-launcher-20260824.png(SHA-256 7A2DA876FBFD54089B783A7FD45C2472476ED47DCEABA08AB305B7B01A18D430)다. Play-signed release와 실제 Pixel/Samsung/OEM mask·scale 증거는 아직 남았다.
  • Play App Signing의 app-signing certificate와 개발자가 보관하는 upload certificate는 서로 다른 신뢰 경계다. Firebase OAuth/App Links에는 Play app-signing fingerprint를 등록하고, AAB 업로드 검증에는 upload fingerprint를 사용한다.
  • AI 신고 source는 generation receipt, authenticated content-report Edge Function, service-only moderation 원장과 purge RPC까지 구현됐고 local SQL/HTTP/Deno 검증이 GREEN이다. receipt는 30일 유효하며 해결된 신고 증거는 180일 후 purge 대상이다. 운영 runbook 초안도 준비됐지만 production 배포, 자동 purge scheduler, 실제 담당 지정과 Play 설치본 E2E는 아직 남았다.
  • local disposable Supabase에서 AI 신고 Red-path E2E 650개가 GREEN이다. malformed body·권한 우회·source ownership·idempotency·rate limit·manager moderation 전이를 실제 Gateway→Edge→DB로 검증하며 production endpoint는 실행기에서 fail-closed한다.

주요 코드 근거

  • 패키지·release 설정: apps/mobile-rn/android/app/build.gradle
  • target API: apps/mobile-rn/android/build.gradle
  • 권한·FGS·AdMob·App Links: apps/mobile-rn/android/app/src/main/AndroidManifest.xml
  • 광고와 UMP: apps/mobile-rn/src/lib/mobile-ads-context.tsx, apps/mobile-rn/src/components/FreeTierBanner.tsx
  • Play Billing: apps/mobile-rn/src/lib/billing-context.tsx, apps/mobile-rn/src/screens/ProPaywallScreen.tsx
  • 계정 삭제: apps/mobile-rn/src/screens/AccountScreen.tsx, apps/mobile-rn/src/lib/account-local-data.ts
  • AI 신고: apps/mobile-rn/src/components/ContentReportSheet.tsx, apps/mobile-rn/src/features/reporting/content-report-service.ts, server/supabase/functions/content-report/, server/supabase/migrations/20260824000029_content_reporting.sql, server/supabase/migrations/20260824000030_profile_managed_field_acl.sql, server/supabase/migrations/20260825000031_audit_log_actor_unlink.sql
  • 법적 링크: apps/mobile-rn/src/screens/SignUpScreen.tsx, apps/mobile-rn/src/screens/SettingsScreen.tsx
  • 공개 법적 문서: site/public/privacy/index.html, site/public/terms/index.html, site/public/delete-account/index.html

Google 공식 기준