Admob으로 프로덕션 광고 적용하는 문제

안녕하세요.

저는 현재 ‘react-native-firebase’ 라이브러리를 통해서

intersitial(전면) 광고를 노출하는 것을 목표로 작업하고 있습니다.

현재 test id를 통해, 양 플랫폼에서 test 전면 광고를 호출하는 것에 성공했는데요,

문제는 test광고가 아닌, 등록한 광고단위를 적용하여 호출하면 광고가 실행되지 않습니다.

test광고가 실행됬다는 것은 클라이언트의 admob 설정에는 문제가 없다고 봐도

좋을까요?

현재, 스토어에 등록 하지 않았으며, 디버그를 통해 에뮬레이터로 테스트하고 있습니다.

혹시 에뮬레이터나 디버그 빌드로는 프로덕션 광고를 가져오지 못하는 것인지,

admob 대시보드에 미디에이션, 캠페인 항목이 있던데, 구체적으로 셋팅을 해줘야되는 것인지

도움을 받고 싶습니다.

controlAdInterstitial = () => {
    // this is production unit id
    const interStialId = Platform.select({
      ios: staticData.admobIds.iosInterstitialId,
      android: staticData.admobIds.androidInterstitialId,
    });
    // run intersitital
    AdInterstitial(interStialId);
    // test id, it's completed
    // AdInterstitial(staticData.admobIds.testInterstitialId);
  };

admob 전면광고 실행 함수

const AdIntersitial = (id) => {
  const { AdRequest } = firebase.admob;
  const request = new AdRequest();
  const adVert = firebase.admob().interstitial(id);

  adVert.on('onAdLoaded', () => {
    adVert.show();
  });

  adVert.loadAd(request.build());

  adVert.on('onAdOpened', () => {
    console.log('Advert ready to show.');
  });

  const ad = setInterval(() => {
    if (adVert.isLoaded()) {
      console.log('process');
      adVert.show();
      clearInterval(ad);
    } else {
      console.log('stop');
    }
  }, 2000);
};

debug 번들에서는 testID외에는 광고가 집행되지 않습니다. 테스트로 광고 수당을 가져가면 아마도 광고주들이 가만히 있지 않겠죠…

release 번들로 한번 실행해봐주시는 것도 좋을 것 같습니다.

아하 그렇군요…

혹시 앱이 스토어에 등록이 된 상태여야만 할까요?

릴리즈 apk 만들어서 실행해봤는데 작동하지 않네요 ㅠ

이것저것 찾아보는데 검색력이 낮아서 쉽게 찾아지질 않네요

네 제 기억이 맞다면 앱이 등록된 것을 확인한 후 몇시간 뒤에 됐던 것 같습니다.

1 Like