서론
갑작스럽게 테스트 광고가 나오지 않았다. 오프닝 광고도, 전면 광고도 나오지 않았다.
본론
로그는 아래와 같다.
ad error: { "Code": 3, "Message": "No ad config.", "Domain": "com.google.android.gms.ads", "Cause": "null", "Response Info": { "Response ID": "null", "Mediation Adapter Class Name": "", "Adapter Responses": [] } } |
구글에 Android No ad config 로 검색하면 수 많은 검색 결과를 볼 수 있고, 각 웹사이트는 해결책을 제시해 주고 있다. 대부분의 해결책으로서 테스트단말을 등록해주면 된다 라는 것이다. 구체적인 방법은 공식 문서에 친절하게 나와 있다
그러나 여전히 동작하지 않는다. 동작한다는 글들도 있지만, 필자로선 동작하지 않는게 맞다고 본다. 대부분의 웹사이트에서 프로그래밍 방식으로 테스트 장치 추가 에 대해서 알려주고 있다. 이미 테스트 광고 유닛 아이디를 사용하고 있는 개발자에겐 의미가 없다. 옵션일 뿐인 프로그래밍 방식으로 테스트 장치를 추가 한다고 해서 바뀐다는게 이상하지 않은가.
문제는, 테스트용 광고 유닛 아이디 가 두개 존재 한다는 것이다. 대부분의 개발자들이(?) 알고 있는 AdMob 사이트의 테스트용 광고 유닛 아이디뿐 아니라 Google Ad Manager 사이트 나와 있는 테스트용 광고 유닛 아이디가 존재한다. 사이트의 모양새도 비슷한다.
AdMob 사이트에 나와 있는 테스트용 광고 유닛 아이디 :
App Open | ca-app-pub-3940256099942544/3419835294 |
Banner | ca-app-pub-3940256099942544/6300978111 |
Interstitial | ca-app-pub-3940256099942544/1033173712 |
Interstitial Video | ca-app-pub-3940256099942544/8691691433 |
Rewarded | ca-app-pub-3940256099942544/5224354917 |
Rewarded Interstitial | ca-app-pub-3940256099942544/5354046379 |
Native Advanced | ca-app-pub-3940256099942544/2247696110 |
Native Advanced Video | ca-app-pub-3940256099942544/1044960115 |
Google Ad Manager 사이트에 나와 있는 테스트용 광고 유닛 아이디 :
App Open | /6499/example/app-open |
Banner | /6499/example/banner |
Interstitial | /6499/example/interstitial |
Rewarded | /6499/example/rewarded |
Rewarded Interstitial | /21775744923/example/rewarded_interstitial |
Native | /6499/example/native |
Native Video | /6499/example/native-video |
결론
구글의 정책이 바뀐것이 아닐까? 언젠가 부터 Google Ad Manager 사이트에 나와 있는 테스트용 광고 유닛 아이디를 사용해야 테스트 광고가 제대로 노출된다. 물론, AdMob 사이트에 나와 있는 테스트용 광고 유닛 아이디가 제대로 동작한다면 그냥 사용하면 된다.
업데이트
2022년 6월 5일 일요일 현재, AdMob 사이트 유닛 아이디로 정상동작 한다.
에러 코드 3 의 의미
public static final int ERROR_CODE_NO_FILL
The ad request was successful, but no ad was returned due to lack of ad inventory.
참고 링크
2024년 01월 12일 금요일