Files
sodalive-android/docs/plan-task/20260421_YandexMobileAdsSDK설정.md

4.7 KiB

20260421 Yandex Mobile Ads SDK 설정

작업 체크리스트

  • Yandex Mobile Ads SDK 공식 요구사항과 현재 프로젝트 삽입 지점을 최종 확정한다.
    QA: 공식 quick start와 settings.gradle, build.gradle, app/build.gradle, app/src/main/AndroidManifest.xml, app/src/main/java/kr/co/vividnext/sodalive/app/SodaLiveApp.kt 근거로 저장소별 반영 위치를 설명할 수 있어야 한다.
  • app 모듈에 Yandex Mobile Ads SDK 의존성을 추가한다.
    QA: app/build.gradledependencies에 SDK가 추가되고, 현재 저장소의 repository 설정과 충돌하지 않아야 한다.
  • 앱 초기화와 매니페스트 설정을 현재 앱 구조에 맞게 반영한다.
    QA: 공식 quick start 기준 자동 초기화가 기본값이므로 SodaLiveApp/매니페스트 변경 없이도 설정이 성립하며, 불필요한 앱 시작 동작 변경을 만들지 않아야 한다.
  • App ID가 필요한 경우 사용자가 바로 수정할 수 있는 위치로 노출한다.
    QA: 공식 quick start 기준 Yandex 전용 App ID 입력은 필요하지 않음을 명시하고, 추후 광고 포맷 구현 시 ad unit ID를 넣을 위치를 별도 안내할 수 있어야 한다.
  • 빌드 및 수동 검증 결과를 문서 하단에 기록한다.
    QA: 최소 ./gradlew :app:assembleDebug 실행 결과와, 가능한 범위의 통합 확인 방법 또는 실제 로그 확인 절차가 누적 기록되어야 한다.

범위 메모

  • 요청 해석은 "현재 Android 프로젝트에 Yandex Mobile Ads SDK 기본 설정을 추가하고, App ID가 필요하면 즉시 수정 가능한 위치를 마련해 안내"로 한정한다.
  • 광고 포맷 구현(배너/전면/보상형 등)은 이번 범위에 포함하지 않는다.
  • 서명/배포/Firebase/기존 광고 외 로직은 요청 범위 밖이므로 건드리지 않는다.

검증 계획

  • ./gradlew :app:assembleDebug로 Gradle 설정과 Android 리소스/매니페스트 병합이 정상인지 확인한다.
  • 필요 시 ./gradlew :app:lintDebug 또는 관련 진단으로 신규 오류 여부를 확인한다.
  • 공식 문서의 "Yandex Ads" Logcat 확인 절차를 따라 수동 초기화/통합 확인 방법을 정리한다.

검증 기록

  • 2026-04-21
    • 무엇: Yandex Mobile Ads SDK 설정 작업을 시작하기 전에 작업 범위, 반영 지점, 검증 계획을 문서화했다.
    • 왜: 저장소 규칙에 따라 docs 계획 문서를 먼저 만들고, 그 문서를 기준으로 구현/검증 이력을 누적해야 하기 때문이다.
    • 어떻게:
      • 생성 파일: docs/20260421_YandexMobileAdsSDK설정.md
      • 근거 파일: settings.gradle, build.gradle, app/build.gradle, app/src/main/AndroidManifest.xml, 공식 문서 https://ads.yandex.com/helpcenter/ko/dev/android/quick-start
      • 결과: 구현 전 체크리스트와 검증 계획을 먼저 고정했다.
  • 2026-04-21
    • 무엇: Yandex Mobile Ads SDK quick-start 범위의 실제 코드 반영 지점을 확정하고 app 모듈에 SDK 의존성을 추가했다.
    • 왜: 공식 문서 기준으로 현재 프로젝트는 repository 요구사항과 Android 버전 요구사항을 이미 만족하고 있었고, 최소 설정 변경은 app/build.gradle 의존성 추가만으로 충분했기 때문이다.
    • 어떻게:
      • 수정 파일: app/build.gradle
      • 유지 파일: settings.gradle, app/src/main/AndroidManifest.xml, app/src/main/java/kr/co/vividnext/sodalive/app/SodaLiveApp.kt
      • 적용 내용: implementation 'com.yandex.android:mobileads:7.18.5' 추가
      • App ID 판단: 공식 quick start에는 Yandex 전용 App ID 설정 단계가 없어 별도 키를 추가하지 않았다. 추후 광고 포맷 구현 시 ad unit ID가 필요하다.
  • 2026-04-21
    • 무엇: Yandex Mobile Ads SDK 의존성 추가 후 debug 빌드와 단위 테스트를 실행해 설정이 현재 프로젝트와 충돌하지 않는지 검증했다.
    • 왜: dependency-only 변경이라도 실제 Gradle 해석, 의존성 해상도, 매니페스트 병합, 컴파일, 테스트 회귀를 통과해야 설정 완료라고 볼 수 있기 때문이다.
    • 어떻게:
      • 실행 명령: ./gradlew :app:assembleDebug :app:testDebugUnitTest
      • 결과: BUILD SUCCESSFUL
      • 비고: Agora/Appsflyer 및 기존 코드 관련 경고는 출력됐지만, 이번 변경으로 인한 신규 실패는 없었다.
      • 수동 확인 방법: 앱 실행 후 Logcat에서 Yandex Ads로 검색하면 integrated successfully 또는 initialized successfully 로그로 통합 상태를 확인할 수 있다.
      • 진단 도구: .gradle 파일은 현재 저장소 LSP 대상이 아니어서 lsp_diagnosticsNo LSP server configured for extension: .gradle로 확인했다.