메인 콘텐츠로 건너뛰기

개요

전면 광고(Interstitial Ad)는 앱의 화면 전체를 덮는 형태로 표시되는 광고입니다. 게임의 레벨 전환, 콘텐츠 페이지 전환 등 앱의 자연스러운 전환 시점에 표시하기 적합합니다.

특징

  • 전체 화면을 덮는 몰입형 광고
  • 사용자가 명시적으로 닫기 전까지 유지
  • 이미지 및 동영상 광고 지원
  • 높은 시각적 주목도
개발 환경에서는 테스트 유닛 ID를 사용하세요: PUBLIC_TEST_UNIT_ID_INTERSTITIAL

구현 방식

Adrop React Native SDK는 전면 광고를 구현하는 두 가지 방식을 제공합니다:
  1. 클래스 방식 - AdropInterstitialAd 클래스를 직접 사용
  2. Hook 방식 - useAdropInterstitialAd Hook 사용 (권장)

AdropInterstitialAd 클래스

생성자

AdropInterstitialAd 인스턴스를 생성합니다.
unitId
string
필수
광고 유닛 ID (콘솔에서 발급)

프로퍼티

isLoaded
boolean
광고가 로드되었는지 여부를 반환합니다.
unitId
string
광고 유닛 ID를 반환합니다.
creativeId
string
현재 로드된 광고의 크리에이티브 ID를 반환합니다.
txId
string
현재 로드된 광고의 트랜잭션 ID를 반환합니다.
campaignId
string
현재 로드된 광고의 캠페인 ID를 반환합니다.
destinationURL
string
현재 로드된 광고의 도착 URL을 반환합니다.
browserTarget
BrowserTarget
현재 로드된 광고의 브라우저 타겟 설정을 반환합니다 (BrowserTarget.EXTERNAL 또는 BrowserTarget.INTERNAL).
listener
AdropListener
광고 이벤트를 수신하는 리스너를 설정합니다.

메서드

load()
() => void
광고를 요청하고 로드합니다.
show()
() => void
로드된 광고를 표시합니다. isLoadedtrue일 때 호출해야 합니다.
close()
() => void
현재 표시 중인 광고를 닫습니다. Android에서 뒤로가기 버튼 처리 시 유용합니다.
destroy()
() => void
광고 인스턴스를 파괴하고 리소스를 해제합니다. 컴포넌트 언마운트 시 반드시 호출해야 합니다.

AdropListener 인터페이스

광고 이벤트를 수신하기 위한 콜백 인터페이스입니다.

권장 콜백

onAdReceived
(ad: AdropAd) => void
광고 수신 성공 시 호출됩니다. 이 시점에서 show()를 호출하여 광고를 표시할 수 있습니다.
onAdFailedToReceive
(ad: AdropAd, errorCode?: string) => void
광고 수신 실패 시 호출됩니다. 에러 코드를 통해 실패 원인을 확인할 수 있습니다.

선택 콜백

onAdImpression
(ad: AdropAd) => void
광고 노출이 기록되었을 때 호출됩니다.
onAdClicked
(ad: AdropAd) => void
사용자가 광고를 클릭했을 때 호출됩니다.
onAdWillPresentFullScreen
(ad: AdropAd) => void
전면 광고가 표시되기 직전에 호출됩니다. 게임 일시정지 등의 작업을 수행할 수 있습니다.
onAdDidPresentFullScreen
(ad: AdropAd) => void
전면 광고가 화면에 표시된 직후 호출됩니다.
onAdWillDismissFullScreen
(ad: AdropAd) => void
전면 광고가 닫히기 직전에 호출됩니다.
onAdDidDismissFullScreen
(ad: AdropAd) => void
전면 광고가 닫힌 직후 호출됩니다. 다음 광고를 미리 로드하기 좋은 시점입니다.
onAdFailedToShowFullScreen
(ad: AdropAd, errorCode?: string) => void
광고 표시 실패 시 호출됩니다. 에러 코드를 통해 실패 원인을 확인할 수 있습니다.
onAdBackButtonPressed
(ad: AdropAd) => void
광고 표시 중 사용자가 뒤로가기 버튼을 눌렀을 때 호출됩니다. Android 전용.

클래스 방식 구현 예제

AdropInterstitialAd 클래스를 직접 사용하는 방식입니다.

useAdropInterstitialAd Hook

React Hook을 사용하여 전면 광고를 더 간편하게 구현할 수 있습니다.

Hook 사용법

unitId
string | null
필수
광고 유닛 ID. null을 전달하면 광고가 해제됩니다.

반환값

load
() => void
광고를 로드합니다. isReadytrue일 때만 동작합니다.
show
() => void
로드된 광고를 표시합니다.
reset
() => void
광고 상태를 초기화하고 새 인스턴스를 생성합니다.
isReady
boolean
광고 인스턴스가 준비되었는지 여부입니다.
isLoaded
boolean
광고가 성공적으로 로드되었는지 여부입니다.
isOpened
boolean
광고가 화면에 표시되었는지 여부입니다.
isClosed
boolean
광고가 닫혔는지 여부입니다.
isClicked
boolean
광고가 클릭되었는지 여부입니다.
errorCode
string | undefined
광고 로드 또는 표시 중 발생한 에러 코드입니다.
isBackPressed
boolean
광고 표시 중 뒤로가기 버튼이 눌렸는지 여부입니다. Android 전용.
browserTarget
BrowserTarget | undefined
로드된 광고의 브라우저 타겟 설정입니다 (BrowserTarget.EXTERNAL 또는 BrowserTarget.INTERNAL).

Hook 방식 구현 예제

useAdropInterstitialAd Hook을 사용하는 방식입니다 (권장).

테스트 유닛 ID

개발 및 테스트 환경에서는 반드시 테스트 유닛 ID를 사용하세요.
프로덕션 빌드에서는 반드시 실제 유닛 ID를 사용해야 합니다. 테스트 유닛 ID로 발생한 수익은 정산되지 않습니다.

에러 처리

광고 로드 및 표시 중 발생할 수 있는 에러를 적절히 처리해야 합니다.

에러 코드

에러 처리 예제


모범 사례

1. 적절한 표시 시점

앱의 자연스러운 전환 시점에 광고를 표시하세요.

2. 사전 로드

광고를 미리 로드하여 사용자 대기 시간을 최소화하세요.

3. 빈도 제한

너무 자주 광고를 표시하지 않도록 제한하세요.

4. 게임 일시정지 처리

클래스 방식에서 리스너를 사용하여 게임 상태를 관리하세요.

5. 메모리 관리

컴포넌트 언마운트 시 반드시 리소스를 해제하세요.

플랫폼별 고려사항

iOS

  • iOS에서는 앱이 백그라운드로 이동할 때 광고가 자동으로 닫힙니다
  • onAdDidDismissFullScreen 콜백이 호출됩니다

Android

  • Android의 뒤로가기 버튼으로 광고를 닫을 수 있습니다
  • 하드웨어 가속이 필요할 수 있습니다

백필 광고

백필 광고를 사용하려면 네이티브 플랫폼(Android/iOS)에 백필 의존성이 추가되어 있어야 합니다.
백필 광고가 활성화되면 직광고를 사용할 수 없을 때 SDK가 자동으로 백필 광고로 폴백합니다. 리스너에서 백필 관련 에러 코드를 처리할 수 있습니다.

다음 단계

보상형 광고

보상형 광고로 사용자 인게이지먼트 향상

배너 광고

배너 광고 구현하기

네이티브 광고

네이티브 광고로 자연스러운 광고 경험 제공

팝업 광고

팝업 광고 구현하기