4.3 KiB
4.3 KiB
20260428 채팅 탭 Yandex 배너 추가
작업 체크리스트
- 기존
YandexInlineBannerView재사용 패턴과 채팅 화면 구조 확인 - 채팅 화면용 banner placement 3종 추가
- 페이지·위치별 ad unit 상수 3종을 운영/디버그 Constants에 추가
CharacterView최근 대화한 캐릭터/인기 캐릭터 사이 배너 추가OriginalTabView최상단 배너 추가 및 스크롤 동작 유지TalkView최상단 배너 추가 및 스크롤 동작 유지- 빌드 및 검증 기록 추가
작업 기준
- 공용 광고 지원:
SodaLive/Sources/Common/YandexAdSupport.swift
- ad unit 상수:
SodaLive/Sources/Utils/Constants.swiftSodaLive/Sources/Debug/Utils/Constants.swift
- 수정 대상:
SodaLive/Sources/Chat/Character/CharacterView.swiftSodaLive/Sources/Chat/Original/OriginalTabView.swiftSodaLive/Sources/Chat/Talk/TalkView.swift
QA 기준
CharacterView에서 Yandex 배너가 최근 대화한 캐릭터 섹션 아래, 인기 캐릭터 섹션 위에 표시된다.CharacterView에서 최근 대화한 캐릭터가 없어도 해당 위치의 Yandex 배너는 표시된다.OriginalTabView에서 Yandex 배너가 최상단에 표시되고, 아래 작품 리스트를 스크롤할 때 함께 이동한다.TalkView에서 Yandex 배너가 최상단에 표시되고, 아래 톡 리스트를 스크롤할 때 함께 이동한다.- 기존 무한 스크롤과
onAppear기반 데이터 로딩 동작은 유지된다.
구현 메모
- 기존
YandexInlineBannerView를 그대로 재사용한다. - ad unit id는 기존과 동일하게 페이지·위치별로 별도 상수를 추가한다.
CharacterView의 기존 상단 캐릭터 프로모션 배너(AutoSlideCharacterBannerView)는 유지하고, Yandex 배너만 최근/인기 사이에 추가한다.
검증 기록
-
2026-04-28 / 사전 조사
- 무엇: 공용 Yandex 배너 지원 코드와 채팅 3개 화면의 스크롤 구조를 확인했다.
- 왜: 새 광고 뷰를 만들지 않고 최소 변경으로 정확한 위치에 삽입하기 위해서다.
- 어떻게:
YandexAdSupport.swift,Constants.swift,Debug/Utils/Constants.swift를 확인했다.- background
explore로 채팅 3개 화면 구조와 기존 광고 배치 패턴을 조사했다.
- 결과:
- 공용
YandexInlineBannerView재사용 가능 - 채팅 화면용 placement 3종과 화면 삽입만 추가하면 되는 범위로 확정
- 공용
-
2026-04-28 / 구현 및 빌드 검증
- 무엇: 채팅 3개 화면용 Yandex 배너 placement/ad unit 상수를 추가하고, 지정 위치에 배너를 삽입했다.
- 왜: 기존 광고 인프라를 유지하면서 요청한 화면과 위치에만 최소 변경으로 광고를 노출하기 위해서다.
- 어떻게:
SodaLive/Sources/Common/YandexAdSupport.swift에chatCharacterList,chatOriginalTabTop,chatTalkTabTopplacement를 추가했다.SodaLive/Sources/Utils/Constants.swift,SodaLive/Sources/Debug/Utils/Constants.swift에 페이지·위치별 ad unit 상수 3종을 추가했다.CharacterView에는 최근 대화한 캐릭터/인기 캐릭터 사이에 배너를 추가했다.OriginalTabView에는ScrollView내부 최상단에 배너를 추가하고 그리드와 함께 스크롤되도록 유지했다.TalkView에는ScrollView내부 최상단에 배너를 추가하고 리스트와 함께 스크롤되도록 유지했다.xcodebuild -workspace "SodaLive.xcworkspace" -scheme "SodaLive-dev" -configuration Debug buildxcodebuild -workspace "SodaLive.xcworkspace" -scheme "SodaLive" -configuration Debug build- 변경 파일
lsp_diagnostics를 확인했다.
- 결과:
SodaLive-devDebug 빌드 성공SodaLiveDebug 빌드 성공Constants.swift,Debug/Utils/Constants.swift는 LSP 진단 없음- 나머지 SwiftUI/Yandex 파일은 SourceKit 단독 해석 환경에서 프로젝트 심볼과
YandexMobileAds모듈을 해석하지 못하는 환경성 오류가 있었지만, 실제xcodebuild실컴파일은 두 스킴 모두 통과했다. - 이 CLI 세션에서는 iOS 시뮬레이터 UI 자동화 경로가 없어 실제 화면 스크롤 수동 검증은 수행하지 못했고, 대신 두 스킴 실컴파일 성공으로 변경 무결성을 확인했다.