docs(agent): 에이전트 가이드를 정리한다
This commit is contained in:
67
docs/plan-task/20260427_Yandex광고SKAdNetwork중복제거및검증.md
Normal file
67
docs/plan-task/20260427_Yandex광고SKAdNetwork중복제거및검증.md
Normal file
@@ -0,0 +1,67 @@
|
||||
# 20260427 Yandex 광고 SKAdNetwork 중복 제거 및 검증
|
||||
|
||||
- [x] Yandex iOS quick-start 공식 문서 확인
|
||||
- [x] 저장소 내 Yandex SDK 초기화 위치 확인
|
||||
- [x] `SodaLive/Resources/Info.plist`와 `SodaLive/Resources/Debug/SodaLive-dev-Info.plist`의 `SKAdNetworkItems` 중복 현황 확인
|
||||
- [x] 두 plist의 `SKAdNetworkItems`를 중복 없이 정리
|
||||
- [x] 정리 후 두 plist의 `SKAdNetworkItems`가 동일한 고유 식별자 집합을 가지는지 확인
|
||||
- [x] Yandex 공식 요구사항과 현재 SDK 추가 상태를 다시 대조
|
||||
- [x] plist 파싱/유효성 검증 수행
|
||||
|
||||
## 작업 기준
|
||||
|
||||
- 공식 문서: `https://ads.yandex.com/helpcenter/ko/dev/ios/quick-start`
|
||||
- 확인된 SDK 초기화 위치: `SodaLive/Sources/App/AppDelegate.swift`
|
||||
- 확인된 의존성 선언: `Podfile`, `Podfile.lock`
|
||||
- 수정 대상:
|
||||
- `SodaLive/Resources/Info.plist`
|
||||
- `SodaLive/Resources/Debug/SodaLive-dev-Info.plist`
|
||||
|
||||
## 현재 확인 사항
|
||||
|
||||
- `AppDelegate.application(_:didFinishLaunchingWithOptions:)`에서 `YandexAds.initializeSDK(completionHandler: nil)` 호출 중
|
||||
- `Podfile`의 `SodaLive`, `SodaLive-dev` 타깃 모두 `pod 'YandexMobileAds', '8.0.0'` 선언됨
|
||||
- `Podfile.lock`에도 `YandexMobileAds (8.0.0)`가 존재함
|
||||
- 두 plist 모두 `SKAdNetworkItems` 총 271개, 고유 222개, 중복 49개 상태임
|
||||
- 두 plist는 각각 `SodaLive`, `SodaLive-dev` 활성 plist로 연결되어 있어 동일 기준으로 함께 정리해야 함
|
||||
|
||||
## 검증 기록
|
||||
|
||||
### 2026-04-27 1차 조사
|
||||
|
||||
- 무엇: Yandex SDK 공식 요구사항과 저장소 내 연동 상태를 비교하기 위한 사전 조사
|
||||
- 왜: plist 중복 제거가 필수 식별자 누락 없이 이뤄져야 하기 때문
|
||||
- 어떻게:
|
||||
- 공식 문서 확인
|
||||
- `AppDelegate.swift`, `Podfile`, `Podfile.lock` 확인
|
||||
- 두 plist의 `SKAdNetworkItems` 중복 개수 집계
|
||||
- 실행 명령:
|
||||
- `rg -n "Yandex|YandexMobileAds|YMAMobileAds|MobileAds" "SodaLive"`
|
||||
- `rg -n "YandexMobileAds|YandexAds" "Podfile" "Podfile.lock" "SodaLive.xcodeproj/project.pbxproj"`
|
||||
- Python `plistlib` 스크립트로 두 plist의 `SKAdNetworkItems` total/unique/duplicates 집계
|
||||
- 결과:
|
||||
- 코드/의존성 기준 SDK는 이미 추가되어 있음
|
||||
- 두 plist에 동일한 중복이 존재함
|
||||
|
||||
### 2026-04-27 2차 정리 및 검증
|
||||
|
||||
- 무엇: 두 plist의 `SKAdNetworkItems`를 Yandex 공식 XML 기준으로 정리하고 SDK 추가 상태를 재검증
|
||||
- 왜: 단순 중복 제거만으로는 공식 목록과 불일치가 남아 있어, 공식 quick-start 기준과 실제 plist를 일치시켜야 했기 때문
|
||||
- 어떻게:
|
||||
- `https://yastatic.net/pcode-static/skadnetwork/skadids.xml`에서 공식 식별자 목록을 읽음
|
||||
- 두 plist의 `SKAdNetworkItems`를 공식 228개 목록으로 재구성함
|
||||
- `plutil -lint`와 Python `plistlib` 비교 스크립트로 중복/누락/초과 여부를 확인함
|
||||
- `xcodebuild`로 `SodaLive`, `SodaLive-dev` Debug 빌드를 수행함
|
||||
- 실행 명령:
|
||||
- Python `plistlib` + 공식 XML 파싱 스크립트로 `SKAdNetworkItems` 재구성
|
||||
- `plutil -lint "SodaLive/Resources/Info.plist"`
|
||||
- `plutil -lint "SodaLive/Resources/Debug/SodaLive-dev-Info.plist"`
|
||||
- Python `plistlib` 스크립트로 공식 목록 일치 여부 확인
|
||||
- `xcodebuild -workspace "SodaLive.xcworkspace" -scheme "SodaLive" -configuration Debug build`
|
||||
- `xcodebuild -workspace "SodaLive.xcworkspace" -scheme "SodaLive-dev" -configuration Debug build`
|
||||
- 결과:
|
||||
- 두 plist 모두 `total=228`, `unique=228`, `duplicates=0`, `missing=0`, `extra=0`
|
||||
- 두 plist 모두 Yandex 공식 XML 목록과 정확히 일치함
|
||||
- `AppDelegate.swift`의 `YandexAds.initializeSDK(completionHandler: nil)` 유지됨
|
||||
- `Podfile`, `Podfile.lock`의 `YandexMobileAds 8.0.0` 선언/설치 상태 확인됨
|
||||
- `SodaLive`, `SodaLive-dev` Debug 빌드 성공
|
||||
Reference in New Issue
Block a user