Files
sodalive-android/docs/20260420_Daro광고기본세팅.md

3.0 KiB

20260420 Daro 광고 기본 세팅

작업 체크리스트

  • 공식 Daro Android 가이드를 기준으로 Non-Reward + Android View 전용 기본 세팅 범위를 확정한다.
    QA: Compose 전용 의존성/예제는 제외되고, daro-a, plugin, key 설정, SDK 초기화, ProGuard 규칙만 반영되어야 한다.
  • settings.gradle, build.gradle, app/build.gradle에 Daro 저장소/플러그인/SDK 및 desugaring 설정을 추가한다.
    QA: 공식 문서 버전(daro-plugin:1.0.13, daro-a:1.5.3)과 minSdk 23 대응 desugaring 설정이 반영되어야 한다.
  • SodaLiveApp에 Daro SDK 초기화를 추가한다.
    QA: 광고 로드 이전 Application.onCreate()에서 Daro.init(...)가 호출되어야 한다.
  • app/proguard-rules.pro에 공식 Non-Reward ProGuard/R8 규칙을 반영한다.
    QA: Daro 문서의 Non-Reward keep/dontwarn 규칙이 파일에 추가되어야 한다.
  • Daro 키 파일/앱 키의 비밀값 커밋 방지 경로를 보강한다.
    QA: app/daro-key.txt, app/android-daro-key.txt 및 flavor/buildType 분기 키 파일이 git 추적 대상에서 제외되어야 한다.
  • 변경 사항을 빌드로 검증하고 결과를 기록한다.
    QA: :app:assembleDebug, :app:assembleRelease 결과와 비밀값 의존 여부를 문서 하단 검증 기록에 남겨야 한다.

검증 기록

  • 2026-04-20
    • 무엇: Daro Android 기본 세팅(Non-Reward, Android View 전용)을 위해 저장소/플러그인/SDK/desugaring 설정, SodaLiveApp 초기화, Non-Reward ProGuard 규칙, 키 파일 ignore 경로를 반영했다.
    • 왜: 공식 get-started 가이드 기준으로 Compose 의존성을 제외한 Android View 앱용 기본 연동과 난독화 설정이 필요했다.
    • 어떻게:
      • 수정 파일: settings.gradle, build.gradle, app/build.gradle, .gitignore, app/src/main/java/kr/co/vividnext/sodalive/app/SodaLiveApp.kt, app/proguard-rules.pro
      • 실행 명령: ./gradlew :app:assembleDebug
      • 결과: DARO 플러그인 적용과 의존성 해상도는 진행됐지만, 로컬 키 파일 app/daro-key.txt를 읽는 과정에서 Tag mismatch!가 발생해 설정 파일이 유효하지 않습니다로 실패했다.
      • 실행 명령: ./gradlew :app:assembleRelease
      • 결과: release만 요청해도 플러그인 설정 단계에서 debug variant 키 검증이 먼저 수행됐고, 동일하게 app/daro-key.txtTag mismatch!로 실패했다. 따라서 현재 차단점은 ProGuard/R8 규칙이 아니라 로컬 Daro 키 파일/앱 키 정합성이다.
      • 메모: 최신 문서는 android-daro-key.txt를 안내하지만, 실제 플러그인은 레거시 app/daro-key.txt도 읽고 있었다. 현재 로컬에 존재하는 키 파일과 daroAppKey가 서로 맞지 않거나 파일 자체가 유효하지 않아 빌드 검증이 차단됐다.
      • 진단 도구: Kotlin(.kt)용 LSP 서버 미구성으로 lsp_diagnostics 실행 불가 확인