광고 사전 로드는 GMA Next-Gen SDK의 광고 로드 기능으로, 백그라운드에서 광고를 로드하고 표시하기 전에 광고를 캐시합니다. 광고 사전 로드를 사용하여 실적을 개선하려면 맞춤 캐싱을 사용 중지하고 해당 책임을 GMA Next-Gen SDK에 위임하세요.
GMA Next-Gen SDK의 광고 사전 로드는 광고 로드 및 캐싱을 자동화합니다.
광고 사전 로드의 이점은 다음과 같습니다.
- 참조 관리: 광고가 표시될 때까지 참조를 유지합니다.
- 자동 새로고침: 캐시에서 광고를 가져올 때 새 광고를 로드합니다.
- 관리형 재시도: 광고 로드에 실패하면 새 광고를 로드합니다.
- 만료 처리: 만료되기 전에 광고를 새로고침합니다.
- 캐시 최적화: 우선순위가 가장 높은 광고를 게재하도록 캐시 순서를 최적화합니다.
광고 사전 로드와 단일 로드 비교
앱에서 전체 화면 광고의 기본 통합으로 광고 사전 로드를 사용합니다.
다음은 광고 사전 로드와 단일 로드 광고 요청을 비교한 것입니다.
광고 사전 로드
광고 사전 로드를 사용하면 다음과 같은 이점이 있습니다.
- 자동화된 수명 주기 관리: 맞춤 수명 주기 코드를 작성하거나 유지하지 않고도 광고 캐싱, 만료 추적, 실패한 요청 재시도, 광고 새로고침을 GMA Next-Gen SDK에 위임할 수 있습니다. 캐시에서 미리 로드된 광고를 가져와 표시하면 GMA Next-Gen SDK에서 대체 광고를 자동으로 로드합니다.
- 전환 시점에 광고 준비: 사용자가 레벨 또는 화면 간에 이동할 때 디스플레이 광고를 표시하도록 광고를 미리 로드합니다.
- 최적화된 광고 선택: GMA Next-Gen SDK에서 미리 로드 구성당 여러 광고를 저장하고 광고를 표시할 때마다 캐시에서 우선순위가 가장 높은 광고를 게재하도록 합니다.
단일 로드
개별 광고 요청을 직접 제어해야 하는 경우에만 단일 로드 광고 요청을 사용하세요. 예를 들면 다음과 같습니다.
- 인바운드 미디에이션: 파트너 입찰과 같은 서드 파티 미디에이션 플랫폼을 통해 GMA Next-Gen SDK를 미디에이션하는 경우 단일 로드 광고 요청을 사용합니다. 자세한 내용은 파트너 입찰에 대한 정보를 참고하세요. 서드 파티 미디에이션 SDK는 폭포식 구조, 캐싱, 새로고침 주기를 관리하므로 GMA Next-Gen SDK는 각 어댑터 로드 호출에 대해 단일 광고 요청을 예상합니다.
- 맞춤 광고 요청: 각 요청 전에 변경되는 맞춤
AdRequest매개변수를 설정하는 경우 단일 로드 광고 요청을 사용합니다.PreloadConfiguration객체를 업데이트하면 미리 로드가 다시 시작되고 캐시된 광고가 삭제됩니다.
광고 수명 주기 동작 비교
다음 표에서는 광고 사전 로드와 단일 로드가 광고 수명 주기 동작을 처리하는 방식을 비교합니다.
| 동작 | 광고 사전 로드 | 단일 로드 API |
|---|---|---|
| 매장 광고 | pollAd 메서드를 호출할 때까지 로드된 광고를 내부 캐시에 저장합니다. |
앱은 광고를 표시할 때까지 로드된 광고 객체 참조를 멤버 변수에 저장해야 합니다. |
| 광고 새로고침 | 캐시에서 광고를 가져올 때 대체 광고를 자동으로 로드합니다. | 사용자가 광고를 닫거나 광고가 표시되지 않으면 앱에서 load 메서드를 수동으로 호출해야 합니다. |
| 실패한 요청 재시도 | 지수 백오프를 사용하여 실패한 요청을 자동으로 재시도합니다. | 실패한 요청을 처리하려면 커스텀 재시도 로직이 필요합니다. |
| 만료 및 새로고침 | 광고 만료를 추적하고 캐시에서 만료된 광고를 자동으로 새로고침합니다. | 앱에서 만료 시간을 추적하고 광고를 수동으로 요청해야 합니다. |
| 캐시 최적화 | 미리 로드 구성당 여러 광고를 저장하고 우선순위가 가장 높은 광고를 먼저 게재합니다. | 기본 제공 대기열이나 캐시 순서 없이 요청당 하나의 광고를 로드합니다. |
광고 사전 로드 수명 주기
광고 사전 로드는 수동 광고 로드 호출을 다음 수명 주기 단계로 대체합니다.
- 광고 사전 로드 시작: 미리 로드 구성당 한 번씩
start메서드를 호출합니다. 구현 세부정보는 앱 오프닝, 전면 광고, 보상형 광고 또는 보상형 전면 광고를 참고하세요. - 미리 로드된 광고 가져오기 및 표시:
pollAd메서드를 호출한 다음show메서드를 호출합니다. 구현 세부정보는 앱 오프닝, 전면 광고, 보상형 광고 또는 보상형 전면 광고를 참고하세요. - 선택사항: 광고 미리 로드 중지:
destroy또는destroyAll메서드를 호출합니다. 구현 세부정보는 앱 오프닝, 전면 광고, 보상형 광고 또는 보상형 전면 광고를 참고하세요.
미리 로드 캐시 한도
버퍼 크기는 미리 로드 구성에 대해 메모리에 보관되는 미리 로드된 광고 수를 제어합니다. 기본적으로 Google은 메모리 사용량과 광고 게재 지연 시간의 균형을 맞추기 위해 버퍼 크기를 최적화합니다.
GMA Next-Gen SDK는 모든 광고 단위 및 미리 로드 ID에서 미리 로드된 총 광고 수에 대해 앱 전체 한도를 적용합니다.
- 기본 앱 전체 한도: GMA Next-Gen SDK는 모든 형식과 미리 로드 ID에 걸쳐 메모리에 최대 6개의 미리 로드된 광고를 보유합니다.
- 권장 버퍼 크기: 각 미리 로드 ID의 버퍼 크기를 2로 유지하는 것이 좋습니다.
다음 단계
GMA Next-Gen SDK는 전체 화면 광고 형식의 광고 사전 로드를 지원합니다. 배너 및 네이티브 광고 형식은 광고 사전 로드를 사용하지 않습니다. 배너 광고는 광고 단위 구성에 따라 자동으로 새로고침되며 네이티브 광고는 NativeAdLoader 클래스를 사용합니다.
선택한 광고 형식에 광고 사전 로드를 통합하거나 실행 지연 시간을 최적화합니다.