Skip to content

Apple / Google 앱 등록 가이드

Apple Developer + Google Play Developer 계정 등록 완료 (2026-04-29).

진행 상태 (2026-04-30)

  • ✅ Apple Developer App ID com.dartbrief.app 등록 (Capabilities: Push, Sign In with Apple, IAP)
  • ✅ App Store Connect 신규 앱 — 이름 공시한입, SKU dartbrief-ios, 한국어 기본
  • ✅ Google Play Console 신규 앱 — 이름 공시한입 (ko-KR 기본 등록정보 입력)
  • Apple Team ID: 36QL8R22FZ
  • 미완료: 스크린샷, 개인정보처리방침 URL, IAP 상품 등록 (디자인·기능 안정화 후)
  • IAP 테스트는 ad_free_pass ₩2,900 부터 (슬롯 결제 보류)

공통 정보

항목
Bundle ID (iOS)com.dartbrief.app (prod) / com.dartbrief.app.dev (dev)
Package Name (Android)com.dartbrief.app
앱 이름공시한입
카테고리Finance + News
출시 지역한국 우선

🍎 Apple 단계

  1. Apple Developer Account → Identifiers → App IDs → com.dartbrief.app 등록 (Capabilities: IAP, Push, Sign In with Apple)
  2. App Store Connect → My Apps → New App (Bundle ID 선택)
  3. App Information / Privacy / Pricing 입력
  4. Features → In-App Purchases → 상품 등록
    • slot_single (Non-Consumable, ₩1,490)
    • slot_bundle_3 (Non-Consumable, ₩2,990)
    • ad_free_pass (Non-Consumable, ₩2,900)
  5. Sandbox Testers 등록 (실 결제 X)
  6. App Store Server Notifications V2 URL 설정 → backend webhook
  7. Sign In with Apple capability ON (iOS 심사 시 Apple Login 필수)

🤖 Google 단계

  1. Play Console → Create App → 정보 입력
  2. Main store listing (스크린샷, 아이콘 512×512, feature graphic)
  3. Categorization, Contact, Privacy policy URL
  4. App Bundle (AAB) 업로드 (Internal testing 트랙)
    • Keystore 생성 필요: mobile/android/app/upload-keystore.jks
  5. Monetize → In-app products
    • slot_single (Managed product = iOS Non-Consumable 대응) ₩1,490
    • slot_bundle_3 ₩2,990
    • 상품 ID 는 Apple/Google 통일 → 백엔드 단순화
  6. License Testers 등록 (실 결제 X)
  7. Real-time Developer Notifications 설정
    • Google Cloud → Pub/Sub topic 생성
    • Push subscription → backend webhook URL
    • Play Console 에 topic 입력

AdMob SSV 콜백 URL 등록 (배포 후 필수)

prod 배포 완료 후 AdMob 콘솔에서 각 광고 단위마다 SSV URL 설정:

  1. AdMob 콘솔 → 앱 선택 → 광고 단위
  2. dartbrief-ios 리워드 광고 단위 → 서버 측 인증 → URL: https://api.dartbrief.com/api/v1/admob/ssv
  3. dartbrief-aos 리워드 광고 단위 → 동일하게 설정

미등록 시 SSV 콜백이 발생하지 않아 prod에서 광고 보상이 전혀 지급되지 않음.

결정 필요 (paid PR 시작 전)

  • Consumable vs Non-Consumable: 슬롯 영구 (Non-) 권장. 정책 단순, 환불 시 자동 capacity 감소.
  • 상품 라인업 확정: slot_single + slot_bundle_3 + ad_free_pass
  • 광고 정책: ad_free_pass 정책 결정 필요

Webhook

  • Apple: POST https://api.dartbrief.com/api/v1/webhooks/apple (Server Notifications V2)
  • Google: POST https://api.dartbrief.com/api/v1/webhooks/google (Pub/Sub push)
  • 둘 다 paid PR 작업 시 backend 라우트 추가 필요 (현재 미존재)

환불 처리 정책 (V6 합의)

  • webhook 수신 → slot_capacity 감소
  • 보유 종목 > 새 capacity 시 가장 오래된 종목 자동 제거 + push 알림
  • 인앱 배너는 v3 (system messages 통합 인프라 만들 시)