Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

개요

본 가이드는 BuzzAd

...

SDK의 Interstitial

...

광고를 연동하는 방법을 다루는 문서입니다

...

.
Interstitial 광고는 네이티브 광고와 달리 미리 정의된 UI로 앱 위를 완전히 덮으면서 노출되는 전면광고입니다.

...

Note

Interstitial 타입을 연동하기 전, 

...

시작하기의 연동 사항을 모두 적용했는지 확인해주세요.

※ 참고사항

Interstitial 타입은 /wiki/spaces/~79598069/pages/1989937432 방식을 활용해서 매체사가 자체적으로 구현하실 수 있기는 하나, 매체사의 구현 편의성을 위하여 BuzzAd-Benefit SDK 내에도 미리 구현을 해 놓은 기능입니다. 따라서 Customization이 가능한 영역이 제한적이기 때문에 조금 더 자유로운 구현을 원하시는 경우 /wiki/spaces/~79598069/pages/1989937432 방식을 이용해 주시면 감사하겠습니다.

Index

Table of Contents
exclude.*(BuzzAd-Benefit SDK: Type C - Interstitial|주의사항|참고사항)

Basic Usage

InterstitialAdHandler 설정

...

전면광고 보여주기

  1. Interstitial Unit ID와 InterstitialAdHandler의 타입 (Dialog 또는 Bottomsheet, 자세한 내용은 아래 참조)을 사용하여 InterstitialAdHandler를 생성합니다.

  2. interstitialAdHandler.show(

...

  1. context)를 호출하여 광고를 호출합니다.

    Code Block
    languagejava
    final InterstitialAdHandler interstitialAdHandler = new InterstitialAdHandlerFactory()
            .create("YOUR_INTERSTITIAL_UNIT_ID", InterstitialAdHandler.Type.Dialog);
    interstitialAdHandler.show(

...

  1. context);

Interstitial

...

Type 설정

Interstitial

...

광고는 Dialog와 BottomSheet의 UI를 제공합니다. 위에서 InterstitialAdHandler 설정시

...

각각 InterstitialAdHandler.Type.Dialog 또는 InterstitialAdHandler.Type.BottomSheet으로

...

Bottom sheet

Image Removed

Dialog

Image Removed

Advanced Usage

InterstitialAdConfig의 설정

Interstitial 광고의 디자인 영역 및 광고 요청 개수에 대해서 매체사에서 Customize 할 수 있도록 지원하고 있습니다. 설정된 InterstitialAdConfig는 interstitialAdHandler.show()를 호출할 때 넣어서 호출합니다.

공통 Config

  • topIcon : Interstitial 광고 상단에 있는 아이콘 (샘플코드처럼 drawable의 id로 지정하거나 drawable type으로 지정 가능)

  • titleText : Interstitial 광고 상단에 있는 Text

  • textColor : titleText의 색깔

  • layoutBackgroundColor : Interstitial 광고 전체의 배경 색깔

  • ctaViewBackgroundColorList : CTA의 배경 색깔

  • ctaRewardDrawable : CTA에 포함된 기본 아이콘 (샘플코드처럼 drawable의 id로 지정하거나 drawable type으로 지정 가능)

  • ctaParticipatedDrawable : 광고 참여 완료 후 보여주는 CTA에 포함된 아이콘 (샘플코드처럼 drawable의 id로 지정하거나 drawable type으로 지정 가능)

  • ctaViewTextColor : CTA의 Text 색깔

  • navigateCommand : InterstitialAd에 Feed으로 이동할 수 있는 링크 view를 추가 (아래의 예시 코드 참고)

    Image Removed
Expand
title예시 코드
Code Block
languagejava
new InterstitialAdConfig.Builder()
    .navigateCommand(NavigateToFeedCommand.with(getApplicationContext(), feedConfig))
    .build()
  • feedUnitId: 피드로 이동하는 링크 뷰에 유저가 추가로 적립할 수 있는 리워드 표시

Expand
title예시 코드
Code Block
languagejava
new InterstitialAdConfig.Builder()
    .navigateCommand(NavigateToFeedCommand.with(getApplicationContext(), feedConfig))
    .feedUnitId(feedConfig.getUnitId())
    .build()

Dialog 전용

  • closeText : 닫기 버튼의 Text

Bottom Sheet 전용

  • adCount : 한번에 요청하는 광고의 개수. 1 ~ 5가 가능하며, adCount를 지정하지 않거나 1 ~ 5 외의 범위를 지정할 경우 5로 고정됨

Code Block
languagejava
InterstitialAdConfig interstitialAdConfig = 
                new InterstitialAdConfig.Builder()
                        .topIcon(R.drawable.bz_ic_checked_circle)
                        .titleText("지금 바로 참여하고 포인트 받기")
                        .textColor(android.R.color.white)
                        .layoutBackgroundColor(R.color.colorPrimaryDark)
                        .ctaViewBackgroundColorList(getBackgroundColorStateList())
                        .ctaRewardDrawable(R.drawable.bz_ic_custom_reward)
                        .ctaParticipatedDrawable(R.drawable.bz_ic_btn_more)
                        .ctaViewTextColor(getTextColorStateList())
                        .closeText("닫기")
                        .build();
final InterstitialAdHandler interstitialAdHandler = new InterstitialAdHandlerFactory()
                        .create("YOUR_INTERSTITIAL_UNIT_ID", InterstitialAdHandler.Type.Dialog);
interstitialAdHandler.show(MainActivity.this, interstitialAdConfig);

private ColorStateList getBackgroundColorStateList() {
    final int[][] states = new int[][]{
            new int[]{android.R.attr.state_enabled},  // enabled
            new int[]{android.R.attr.state_pressed}   // pressed
    };

    final int[] colors = new int[]{
            ContextCompat.getColor(this, android.R.color.holo_green_light),
            ContextCompat.getColor(this, android.R.color.holo_green_dark)
    };

    return new ColorStateList(states, colors);
}

private ColorStateList getTextColorStateList() {
    int[][] states = new int[][]{
            new int[]{android.R.attr.state_enabled},  // enabled
            new int[]{android.R.attr.state_pressed}   // pressed
    };

    int[] colors = new int[]{
            Color.WHITE,
            Color.WHITE
    };

    return new ColorStateList(states, colors);
}

Interstitial dialog 종료 콜백

Info

2.11.x 버전부터 사용 가능합니다.

Note

2.11.x 버전부터 InterstitialAdHandler.OnInterstitialAdEventListenerinterface에서 abstract class로 변경되었습니다.

다음의 콜백을 이용하여, InterstitialAd가 종료되는 것을 알 수 있습니다.

Code Block
interstitialAdHandler.show(MainActivity.this, interstitialAdConfig, new InterstitialAdHandler.OnInterstitialAdEventListener() {
            ...
            @Override
            public void onFinish() {
                // 인터스티셜 종료시
            }
        }); 

광고 로드 결과에 대한 리스너 등록

광고가 로드에 실패한 경우에 대해 리스너를 등록할 수 있습니다.

...

languagejava

...

설정할 수 있습니다.