Inflearn brand logo image

인프런 커뮤니티 질문&답변

Heesu Jung님의 프로필 이미지
Heesu Jung

작성한 질문수

350개의 개인 앱을 만들어 월급의 7배 수익을 달성한 방법

애드몹 계정 개설하기!

애드몹 테스트광고에서 "no fill" 문제

해결된 질문

작성

·

117

0

안녕하세요 좀비님, 덕분에 앱 출시하고 애드몹 광고까지 붙여보았습니다.

하단배너 구현할때 디버그 모드에선 테스트 광고, 릴리즈 모드에선 실제 광고가 잘 나오는 걸 보고 출시했습니다.

 

그런데 새로운 기능을 개발하려고 테스트 기기에서 돌려보니 광고가 안 나오고 "no fill"이라는 에러를 뱉습니다.

검색해보니 더 이상 보여줄 광고가 없을 때 나오는 에러라고 하는데.. 테스트 광고에서도 이럴 수가 있나요? 테스트 광고에서 이런 케이스에 대해선 아직 답변을 못 찾아 답답한 마음에 여기 질문해봅니다.

플레이스토어/앱스토어에서 다운받거나 릴리즈 모드로 돌려보면 광고가 잘 나오고 있습니다. 혹시 제가 본인 기기에서 자꾸 테스트 하는 게 문제일까 싶어서 테스트 기기로 등록도 했습니다. 물론 계속 테스트 광고로 보긴 했지만요.

 

광고가 없는 문제니 시간이 좀 지나면 해결될까 싶었지만 이틀째 계속 이러고 있네요.. 혹시 유사한 경험이 있으신지, 해결책을 아시는지 궁금합니다.

그리고 이 테스트 광고를 떠나서도 애드몹에서 이렇게 광고가 없는 경우가 있을텐데, 이럴때 어떻게 대처하셨는지 궁금합니다.

답변 2

0

프로그래밍좀비님의 프로필 이미지
프로그래밍좀비
지식공유자

말씀하신 상황은 실제로 자주 발생하는 현상입니다. 몇 가지 원인과 해결책을 알려드릴게요.

테스트 광고에서 "no fill" 발생하는 이유: 모든 광고가 100% 노출되는 것은 아니며, 반복적인 광고 노출이나 테스트 환경에서도 충분히 no fill과 같은 에러가 발생할 수 있습니다. 테스트 광고도 실제 AdMob 서버에서 제공되기 때문에 간헐적으로 광고 인벤토리가 부족할 수 있고, 같은 기기에서 반복적인 광고 요청 시 일시적으로 제한될 수도 있습니다.

디버그 모드 권장 설정: 디버그 모드일 때는 테스트 광고 단위 ID를 활용하시는 것을 추천드립니다. 다음과 같은 형태로 광고를 처리하시면 좋습니다.

fun loadInterstitialAd(): AdProvider {
    InterstitialAd.load(
        activity,
        TEST_INTERSTITIAL_ID or AppData.FULL_AD_ID,
        adRequest,
        getInterstitialAdLoadCallback(),
    )
    return this
} 

fun loadBannerAd(adView: ViewGroup) {
    adView.addView(
        AdView(activity).apply {
            adUnitId = TEST_BANNER_ID or AppData.BANNER_AD_ID
            setAdSize(getBannerSize(adView))
            loadAd(adRequest)
        },
    )
}

private infix fun String.or(that: String) = if (BuildConfig.DEBUG) this else that

companion object {
    private const val TEST_BANNER_ID = "ca-app-pub-3940256099942544/6300978111"
    private const val TEST_INTERSTITIAL_ID = "ca-app-pub-3940256099942544/1033173712"
    private const val TEST_NATIVE_ID = "ca-app-pub-3940256099942544/2247696110"
}

실제 서비스에서의 대처법: 실제 릴리즈된 앱에서 해당 에러가 발생하지 않는다면 자연스러운 현상이니 크게 걱정하지 않으셔도 될 것 같습니다.

혹여 100% 광고 노출이 되지 않는 점을 좀 더 보완하고 싶으시다면, 여러 광고 네트워크를 연동한 Mediation 설정을 통해 노출되지 않는 시점에 추가로 다른 광고를 넣어서 광고의 빈틈을 메우는 것도 고려해보시는 것도 하나의 해결책이 될 수 있습니다 :)

추가로 광고 로드 실패 시 재시도 로직 구현이나, 광고가 없을 때 보여줄 대체 컨텐츠 준비 또는 처리도 사용자 경험 향상에 도움이 됩니다.

릴리즈 모드에서 정상 작동한다면 개발에는 문제없으니, 테스트 광고 이슈는 크게 걱정하지 않으셔도 될 것 같습니다. 🙂

0

안녕하세요, 인프런 AI 인턴입니다. Heesu Jung님.

애드몹 광고에서 “no fill” 문제로 인해 고민이시군요. 특히 테스트 광고에서도 이런 문제가 발생할 수 있다니 다소 당황스러우셨을 것 같습니다. “no fill”은 주로 애드몹이 현재 보여줄 수 있는 광고가 없을 때 발생하는 오류 메시지로, 테스트 광고에서도 드물게 발생할 수 있습니다.

테스트 광고에서 “no fill” 문제 해결 방법

  1. 테스트 디바이스 재등록:

    • 기존에 테스트 기기로 등록돼 있어도, 디바이스 ID를 다시 확인하고 재등록하는 것이 좋습니다. 일부 설정 오류로 인해 테스트 모드가 제대로 작동하지 않을 수 있습니다.
  2. 애드몹 계정 상태 확인:

    • 애드몹 계정에서 특정 제한이 걸려 있는지 확인하십시오. 간혹 정책 위반이나 오용으로 인해 광고가 제한될 수 있습니다.
  3. 광고 유닛 확인:

    • 사용하는 광고 유닛 ID가 올바르고, 테스트 모드와 릴리스 모드에서 동일하게 적용되고 있는지 확인합니다.
  4. 테스트 광고의 변경된 정책 확인:

    • 구글이 테스트 광고와 관련하여 최근에 정책을 변경했을 수 있으니, 애드몹 공식 문서를 참조하여 최신 정책을 확인합니다.
  5. 다양한 네트워크 환경에서 테스트:

    • 네트워크 설정에 문제가 있을 수 있으므로, 와이파이와 모바일 데이터를 번갈아 사용하며 테스트합니다.

관련 질문에 대한 유사한 토픽을 제공하는 링크를 드리니 참고하세요:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Heesu Jung님의 프로필 이미지
Heesu Jung

작성한 질문수

질문하기