개요
팝업 광고(Popup Ad)는 특정 순간에 화면에 나타나는 광고 포맷입니다. 앱 실행 시, 콘텐츠 로드 완료 시, 특정 이벤트 발생 시 등 원하는 타이밍에 표시할 수 있으며, 사용자가 닫기 버튼을 누르거나 “오늘 하루 보지 않기”를 선택하여 종료할 수 있습니다.특징
- 화면 중앙 또는 하단에 표시되는 팝업 형태
- 이미지 및 동영상 광고 지원
- 닫기, 딤(배경) 클릭, “오늘 하루 보지 않기” 옵션 제공
- 배경색, 텍스트 색상 등 커스터마이징 가능
- 사용자 경험을 해치지 않으면서도 효과적인 광고 경험
개발 환경에서는 테스트 유닛 ID를 사용하세요. 테스트 유닛 ID 섹션을 참고하세요.
구현 단계
팝업 광고는 다음 4단계로 구현합니다:- 초기화 - AdropPopupAd 인스턴스 생성
- Delegate 설정 - 광고 및 닫기 이벤트 수신을 위한 Delegate 설정
- 광고 로드 - 광고 요청 및 수신
- 광고 표시 - 화면에 광고 표시
UIKit 구현
기본 구현
Delegate 구현
SwiftUI 구현
SwiftUI에서는UIViewControllerRepresentable로 화면의 뷰 컨트롤러를 가져와 show(fromRootViewController:)에 넘깁니다.
SDK 1.16.1부터 광고는 넘긴 뷰 컨트롤러가 있는 창에 표시됩니다. 앱이 창을 여러 개 띄우는 경우(iPad, iPhone Duo 분할 화면)
UIApplication.shared.connectedScenes.first로 찾은 뷰 컨트롤러는 다른 창의 것일 수 있으며, 그러면 광고가 그 창에 표시됩니다.화면의 뷰 컨트롤러 가져오기
아래 코드를 한 번 추가해 두고 광고를 표시하는 모든 화면에서 재사용하세요. 화면 뒤에 크기가 0인 뷰 컨트롤러를 두고 약한 참조로 보관합니다.ViewModel 패턴
커스터마이징
팝업 광고의 외형을 커스터마이징할 수 있습니다.배경색 및 텍스트 색상 설정
커스터마이징 옵션
Delegate 메서드
AdropPopupAdDelegate (광고 이벤트)
필수 메서드
선택 메서드
AdropPopupAdCloseDelegate (닫기 이벤트)
모든 메서드가 선택사항입니다.사용자가 “오늘 하루 보지 않기”를 선택했을 때 호출됩니다. 이 콜백에서 날짜를 저장하여 하루 동안 광고를 표시하지 않도록 구현할 수 있습니다.
커스텀 클릭 처리
useCustomClick을 사용하여 광고 클릭 동작을 직접 제어할 수 있습니다. 활성화하면 SDK가 클릭 시 자동으로 URL을 열지 않으며, 직접 처리할 수 있습니다.
useCustomClick
useCustomClick이 true이면, SDK는 광고 클릭 시 자동으로 URL을 열지 않습니다. onAdClicked delegate 콜백은 계속 호출되며, open() 메서드를 사용하거나 직접 네비게이션을 처리할 수 있습니다.
open()
광고의 목적지 URL을 엽니다. 커스텀 URL을 전달할 수도 있습니다.close()
프로그래밍 방식으로 팝업 광고를 닫습니다.프로퍼티
클로저 기반 콜백
Delegate 외에 클로저 기반 콜백도 사용할 수 있습니다. 전체 delegate 패턴을 구현하고 싶지 않을 때 편리합니다.Delegate 콜백과 클로저 기반 콜백은 동시에 사용할 수 있습니다. 둘 다 호출됩니다.
”오늘 하루 보지 않기” 구현
사용자가 “오늘 하루 보지 않기”를 선택했을 때 적절히 처리하는 방법입니다.SDK가 “오늘 하루 보지 않기” 상태를 자동으로 관리합니다. 다음 예제는 기본 처리 외에 커스텀 동작을 추가하는 방법을 보여줍니다.
구현
SDK가 “오늘 하루 보지 않기”를 선택한 경우load() 시 자동으로 로드를 건너뜁니다. 별도의 수동 체크 없이 load()만 호출하면 됩니다.
모범 사례
1. 적절한 표시 시점
팝업 광고는 다음 시점에 표시하는 것이 효과적입니다:2. “오늘 하루 보지 않기” 존중
사용자가 “오늘 하루 보지 않기”를 선택했다면 반드시 준수하세요.3. 빈도 제한
팝업 광고를 너무 자주 표시하지 마세요.테스트 유닛 ID
개발 및 테스트 시 다음 테스트 유닛 ID를 사용하세요.관련 문서
시작하기
SDK 설치 및 초기화
전면 광고
전면 광고 구현하기
보상형 광고
보상형 광고 구현하기
배너 광고
배너 광고 구현하기