showFullScreenAd 호출 시 failedToShow 반복 발생 — 보상형 광고 표시 불가 (RN)

이 글의 성격은 무엇인가요?

질문 / 문제 해결

내용을 설명해주세요

  • 개발 환경: React Native (0.84)
  • SDK version: 2.4.7
  • 테스트 환경: QR 테스트 환경 (iOS 실기기)

안녕하세요. 리워드 전면 광고 개발 중 오류가 도저히 해결되지 않아 문의 남깁니다.
loadFullScreenAd 호출 후 loaded 이벤트는 정상 수신됩니다.
isLoaded = true 상태를 확인한 뒤 showFullScreenAd를 호출하면 failedToShow 이벤트가 항상 발생하며 광고가 표시되지 않습니다.

사용자에게는 다음 순서로 메시지가 표시됩니다:

  1. 첫 번째 탭 — isLoaded = false 상태에서 버튼을 누른 경우:
    “광고를 준비하고 있어요. 잠시 후 다시 시도해 주세요.”
  2. 두 번째 탭 — isLoaded = true 상태에서 버튼을 누른 경우:
    Error: Ad failed to show (-> failedToShow 이벤트에서 생성된 에러)

재현 코드

// 컴포넌트 마운트 시 광고 로드
loadCleanupRef.current = loadFullScreenAd({
options: { adGroupId }, // 테스트/운영 ID 모두 시도
onEvent: (event) => {
if (event.type === ‘loaded’) {
setIsLoaded(true); // ← 정상 수신됨 (여기까지는 OK)
setIsLoading(false);
}
},
onError: (err) => { onError?.(err); },
});

// isLoaded = true 확인 후 광고 표시
showCleanupRef.current = showFullScreenAd({
options: { adGroupId },
onEvent: (event) => {
if (event.type === ‘userEarnedReward’) {
onReward(event.data);
} else if (event.type === ‘dismissed’) {
setIsShowing(false);
setIsLoaded(false);
} else if (event.type === ‘failedToShow’) {
//. ← 항상 여기로 진입
setIsShowing(false);
setIsLoaded(false);
onError?.(new Error(‘Ad failed to show’));
}
},
onError: (err) => { onError?.(err); },
});


시도한 것들

  1. 테스트 ID / 운영 ID 교체 — 동일 증상
  2. 다른 iOS 기기, 다른 토스 계정으로 테스트 — 동일 증상
  3. @apps-in-toss/framework 2.0.5 → 2.4.7 업그레이드 — 동일 증상
  4. ATT 허용 확인 — 설정 앱에서 추적 허용 상태 확인
  5. loadFullScreenAd.isSupported() = true — SDK 지원 환경 확인
  6. loaded 이벤트 정상 수신 확인 — isLoaded = true 이후에 show() 호출

질문

  1. loaded 이벤트까지는 정상인데 showFullScreenAd에서 항상 failedToShow가 발생하는 알려진 원인이 있나요?
  2. 콘솔 QR (intoss-private://) 배포 환경에서 showFullScreenAd가 동작하지 않는 제약이 있나요? (샌드박스 앱은 인앱 광고 미지원임을 알고 있어 실
    토스 앱 QR 배포로 테스트했습니다)
  3. failedToShow 발생 시 더 상세한 에러 코드나 원인을 확인할 수 있는 방법이 있나요?

감사합니다.

appName (선택)

dalto-tarot