앱이 론칭 이후 치명적인 문제 발생하여 도움 필요(출시 후 loadFullScreenAd 'loaded' 이벤트 미발생)

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

질문 / 문제 해결

내용을 설명해주세요

[증상]
loadFullScreenAd 호출 후 15초 이상 대기해도 ‘loaded’ 이벤트가 발생하지 않습니다.
onError 콜백도 호출되지 않아 명시적 실패도 없는 상태이며, adReady 플래그가 false로 유지되어
showFullScreenAd가 호출되지 못하고 사용자에게 “광고를 불러오는 중이에요” 안내만 노출됩니다.
출시 1일 이상 경과해도 동일 현상이 지속됩니다.

[미니앱 정보]

  • 미니앱 이름: 국회의원 맛집 지도
  • 광고 그룹 ID: ait.v2.live.ac31bbcfe9714741
  • 광고 형식: 전면 광고 (보상형, 잠금 해제용)

[개발 환경]

  • WebView 기반 미니앱 (Vite + React 19 + TypeScript)
  • @apps-in-toss/web-framework 2.3.0
  • 패키지 매니저: npm

[비교 포인트 — 동일 코드 패턴, 다른 결과]
이전에 출시한 미니앱 your-boyfriend-score (광고 그룹 ID: ait.v2.live.2e30a6af029d46e9)에서는
완전히 동일한 adGate.ts 코드 패턴으로 광고가 정상 출고되어 보상형 잠금 해제까지 정상 동작 중입니다.
이번 미니앱은 코드 패턴을 그대로 복제했음에도 ‘loaded’ 이벤트가 오지 않습니다.

[코드 스니펫 — preloadAd 핵심부]
const mod = await import(‘@apps-in-toss/web-framework’);
if (!mod?.loadFullScreenAd) return;
if (typeof mod.loadFullScreenAd.isSupported === ‘function’
&& !mod.loadFullScreenAd.isSupported()) return;

cleanupLoad?.();
adReady = false;
cleanupLoad = mod.loadFullScreenAd({
options: { adGroupId: ‘ait.v2.live.ac31bbcfe9714741’ },
onEvent: (event) => {
if (event.type === ‘loaded’) adReady = true;
},
onError: () => { adReady = false; },
});

[디버깅 시도 (해본 것)]

  1. SDK 호출 패턴을 검증된 다른 미니앱(your-boyfriend-score)과 100% 동일하게 맞춤
  2. dynamic import + isSupported 가드 + adReady 플래그 + cleanup 함수 모두 포함
  3. preload 호출 시점을 사용자 클릭보다 충분히 앞에 배치 (시트 열림 시점)
  4. 사용자가 10~30초 대기 후 클릭 → 동일 (타이밍 문제 배제)
  5. 토스 콘솔의 광고 통계 페이지 확인 → “통계 아직 제공되지 않음” 표시

[질문 / 요청]

  1. 해당 광고 그룹 ID(ait.v2.live.ac31bbcfe9714741)의 인벤토리 매칭 상태를 확인 부탁드립니다.
  2. onEvent(‘loaded’)와 onError 둘 다 발생하지 않는 케이스에서, 클라이언트 측에서 추가로 확인할 수 있는 디버그 포인트가 있을까요?

확인 부탁드립니다. 감사합니다.

개발 환경: WebView 기반 미니앱 (Vite + React 19 + TypeScript)
사용 중인 SDK 버전: @apps-in-toss/web-framework 2.3.0
환경: 실제 런칭 환경

appName (선택)

국회의원 맛집 지도

이미지 첨부

안녕하세요 :slight_smile:
채널톡으로 답변이 나간 것으로 보입니다. 이슈 해결이 되셨나요 ?

아니요! ㅠㅠ 아직 해결되지 않았습니다…
처리가 늦어지고 있어서 일단 광고 제거 버전으로 수정해서 올려두었습니다.

==
토스팀:
@apps-in-toss/web-framework 버전을 2.4.2 이상으로 올리고, 동일한 문제가 발생하는지 확인 부탁드려도 될까요?

제 답변:
확인 결과 package.json에는 ^2.3.0으로 표기되어 있었지만 실제 설치된 버전은 2.4.7로 이미 2.4.2 이상이었습니다ㅠㅠ명시적으로 최신 2.5.0으로 업그레이드 후 v1.4로 재빌드하여 테스트해보고 다시 말씀드릴께요!ㅎㅎ

토스팀:
감사합니다. 확인 후 말씀해 주세요!

제 답변:
2.5.0(최신)으로 업그레이드 후 재빌드해도 라이브 광고 ID(ait.v2.live.ac31bbcfe9714741)는 여전히 ‘loaded’ 이벤트가 발생하지 않네요 ㅠㅠ

추가 검증을 위해 토스 공식 테스트 광고 ID(ait-ad-test-interstitial-id)로 빌드한 결과, 테스트 환경에서 더미 광고가 정상 출고되어 SDK 호출 흐름은 완전히 정상임을 확인했습니다.

라이브 광고 그룹 ID의 인벤토리 매칭 상태를 다시 한번 확인 부탁드립니다. 앱에 국회의원이라는 단어가 들어가는데, 선거 기간이라 그런걸까요? (정치와는 완전히 무관하긴합니다 ㅠㅠ)
검토해봐주시고 안되면 그냥 깔끔하게 포기하겠습니다..!

음… 아예 호출이 들어오지않는 것 같은데,
호출해주신 코드 공유해주실 수 있을까요 ?

@teoh 님 안녕하세요
혹시 안드로이드, iOS 둘 다 발생하는 문제인지, 앱 버전은 어떻게 되는지 확인 부탁드려도 될까요?
내부적으로 여러가지 케이스를 검토하고 있는데 파악이 어려워 도움을 부탁드립니다 :folded_hands: