본문으로 건너뛰기

GoogleAdMob.isAppsInTossAdMobLoaded

loadAppsInTossAdMob으로 광고가 성공적으로 로드되었는지 비동기로 확인합니다. 광고 노출 전 상태를 체크하거나, loaded 이벤트를 놓친 경우의 폴백으로 사용합니다.

시그니처

isAppsInTossAdMobLoadedGoogleAdMob 네임스페이스 객체의 멤버로 노출됩니다.

import { GoogleAdMob } from '@apps-in-toss/web-framework';

declare const GoogleAdMob: {
isAppsInTossAdMobLoaded: ((args: IsAdMobLoadedOptions) => Promise<boolean>) & {
isSupported: () => boolean;
};
};

interface IsAdMobLoadedOptions {
adGroupId: string;
}

파라미터

이름타입필수설명
args.adGroupIdstring로드 여부를 확인할 광고 그룹 단위 ID.

반환값

  • Promise<boolean> — 광고가 로드되어 노출 가능한 상태이면 true, 그렇지 않으면 false.

권한

권한이 필요하지 않습니다 — GoogleAdMob.isAppsInTossAdMobLoaded는 별도의 PermissionName에 바인딩되지 않습니다. 권한이 필요한 다른 네임스페이스의 일반적인 처리 흐름은 Guides — 권한 처리 패턴을 참고하세요.

예제

최소 예제

import { GoogleAdMob } from '@apps-in-toss/web-framework';

const isLoaded = await GoogleAdMob.isAppsInTossAdMobLoaded({
adGroupId: 'ad-group-id-here',
});

if (isLoaded) {
console.log('광고 준비 완료');
}

실전 예제 — 버튼 활성화 상태를 로드 여부로 제어

import { GoogleAdMob } from '@apps-in-toss/web-framework';
import { useEffect, useState } from 'react';

const AD_GROUP_ID = 'ad-group-id-here';

function AdButton() {
const [canShow, setCanShow] = useState(false);

useEffect(() => {
if (!GoogleAdMob.isAppsInTossAdMobLoaded.isSupported()) return;

let cancelled = false;
GoogleAdMob.isAppsInTossAdMobLoaded({ adGroupId: AD_GROUP_ID })
.then((loaded) => {
if (!cancelled) setCanShow(loaded);
})
.catch(console.error);

return () => {
cancelled = true;
};
}, []);

const handleClick = () => {
if (!canShow) return;
GoogleAdMob.showAppsInTossAdMob({
options: { adGroupId: AD_GROUP_ID },
onEvent: (event) => console.log('광고 이벤트', event),
onError: console.error,
});
};

return (
<button type="button" onClick={handleClick} disabled={!canShow}>
{canShow ? '광고 보기' : '광고 로딩 중...'}
</button>
);
}

직접 실행해 보기

sdk-example의 Ads 페이지에서 GoogleAdMob 워크플로를 직접 실행해 볼 수 있습니다.

sdk-example에서 실행해 보기

관련 API

관련 가이드

외부 참조