전면 광고 및 보상형 광고 통합

개요

전면 광고란

전면 광고는 앱의 인터페이스를 덮는 전체 화면 광고입니다. 일반적으로 활동 간 또는 게임 레벨 사이의 일시 중지 동안과 같이 앱 흐름의 자연스러운 전환 지점에 표시됩니다. 일부 전면 광고는 보상형 광고에 해당합니다.

보상형 광고란

보상형 광고는 사용자에게 광고 시청 및 참여의 대가로 가치 있는 무언가를 제공하여 훌륭한 사용자 경험을 제공합니다. 제공되는 것은 일반적으로 게임의 추가 생명, 가상 화폐 또는 퍼즐의 힌트와 같은 앱 내의 보상입니다(보상의 성격과 금액 결정 가능). 앱 사용 중 중단 지점에서 자연스럽게 표시되는 보상형 동영상 광고는 특히 Vungle의 권장 사항에 따라 건너뛸 수 없도록 만드는 경우 높은 수익을 제공합니다.

참고: 경우에 따라 보상형 광고는 인센티브 광고로 불리기도 합니다. 두 용어는 항상 같은 종류의 광고를 나타냅니다. Vungle은 '보상'이라는 용어를 더 선호하지만, SDK 코드와 보고 API에서는 '인센티브'라는 용어를 사용합니다.

보상형 광고를 통합하는 방법에는 인앱 보상(권장, 이하 설명 제공) 또는 서버 간 콜백(해당 주제에 관한 당사 FAQ 문서 참조)의 두 가지가 있습니다. 인앱 보상을 사용하면, 사용자가 성공적으로 광고 시청을 완료하거나 다운로드 버튼을 클릭하였을 때 앱을 통해 직접 보상할 수 있습니다. 이 접근 방식의 주요 이점은 구현이 간단하다는 것입니다. 빠르게 무언가를 모색하거나 반복 재생 어택에 관심이 없다면 해당 방법을 이용해야 합니다.

Vungle은 이제 동적 템플릿 광고로 다양한 광고 포멧을 제공합니다. 비디오 재생 후에 끝내기 카드가 표시되는 기존 광고 포멧과 달리 Vungle은 비디오 재생 중에 클릭 유도 문안 (CTA) 버튼을 사용할 수 있는 템플릿을 제공합니다. 비디오 광고를 끝까지 시청한 사용자 및 버튼을 클릭한 사용자에게 보상을 제공해야 합니다.

1단계. 기본 통합 완료

Android 또는 Amazon 앱에 전면 광고를 통합하려면 먼저 기본 통합 문서의 지침을 따릅니다. 이 문서에는 추가 정보가 포함되어 있으며 기본 통합을 완료했다고 가정하고 설명을 진행합니다.

2단계. 이벤트 리스너 구현

이제 광고 로드 이벤트용 LoadAdCallback 및 광고 재생 이벤트용 PlayAdCallback을(를) 구현하거나, loadAdplayAd을(를) 호출하는 인라인 콜백을 구현하여 모든 이벤트에 일반 콜백을 사용할 수 있습니다.

LoadAdCallback

6.5.0 이상 레거시
private final LoadAdCallback vungleLoadAdCallback = new LoadAdCallback() { 
  @Override
  public void onAdLoad(String id) { 
    // Ad has been successfully loaded for the placement
  } 

  @Override 
  public void onError(String id, VungleException exception) { 
    // Ad has failed to load for the placement
  }
};
오버라이딩 가능 메서드 설명
onAdLoad(String id) 광고가 성공적으로 로드되고 플레이스먼트에 재생될 때 호출됩니다
onError(String id) 광고를 재생하는 동안 오류가 발생하면 호출됩니다. VungleExceptiongetLocalizedMessage 오류 메시지를 확인하고 getExceptionCode을(를) 디버깅에 사용할 수 있습니다.

PlayAdCallback

6.6.0 이상 레거시
private final PlayAdCallback vunglePlayAdCallback = new PlayAdCallback() {
  @Override
  public void onAdStart(String id) { 
    // Ad experience started
  }

  @Override
  public void onAdEnd(String id) {
    // Ad experience ended
  }

  @Override
  public void onAdClick(String id) {
    // User clicked on ad
} @Override public void onAdRewarded(String id) { // User earned reward for watching an ad } @Override public void onAdLeftApplication(String id) { // User has left app during an ad experience } @Override public void onError(String id, VungleException exception) { // Ad failed to play } };
오버라이딩 가능 메서드 설명
onAdStart(String id) 광고가 성공적으로 실행되고 기기에 표시될 때 호출됩니다.
onAdEnd(String id) 컨트롤이 호스팅 앱으로 다시 반환되기 직전에 전체 광고 경험이 완료될 때 호출됩니다.
onAdClick(String id) 사용자가 동영상 광고 또는 다운로드 버튼을 클릭할 때 호출됩니다.
onAdRewarded(String id) 사용자가 보상형 동영상의 80%를 완료하고 보상을 받아야 할 때 호출됩니다. 사용자에 대한 보상은 해당 장소에서 이루어져야 하며 오직 보상형 플레이스먼트에 대해서만 트리거됩니다.
onAdLeftApplication(String id) 광고에 관련된 스토어 페이지를 여는 것과 같이 광고 경험이 완료되기 전에 사용자가 앱을 떠날 때 호출됩니다.
onAdError(String id, VungleException exception) 광고를 재생하는 동안 오류가 발생하면 호출됩니다. VungleExceptiongetLocalizedMessage 오류 메시지를 확인하고 getExceptionCode을(를) 디버깅에 사용할 수 있습니다.

3단계. 광고 로드 및 재생

플레이스먼트에 광고 로드

LoadAdCallback은(는) 할당된 호출의 로드 상태에 대한 알림을 받습니다. SDK는 이 콜백을 참조만 하며 어디에도 저장하지 않습니다. 콜백을 적절하게 관리하는 것은 호출자의 책임입니다.

public static void loadAd(@NonNull final String id, @Nullable LoadAdCallback callback)
// Load Ad Implementation
if (Vungle.isInitialized()) {
  Vungle.loadAd("PLACEMENT_ID", new LoadAdCallback() {
    @Override
    public void onAdLoad(String placementReferenceId) { }

    @Override
    public void onError(String placementReferenceId, VungleException exception) { }
  });
}

플레이스먼트의 광고 가용성 확인

메서드를 호출하기 전에 정적 메서드 canPlayAdmethod를 사용하여 playAd해당 플레이스먼트에 대해 재생할 수 있는 광고가 있는지 확인합니다.

public static boolean canPlayAd(@NonNull String id)

광고 재생

광고를 재생하려면 플레이스먼트 참조 ID, AdConfig 옵션(사용되지 않는 경우 null) 및 PlayAdCallback 이벤트 리스너가 포함된 playAd 메서드를 호출하여 광고가 재생되는 동안 성공 또는 오류에 대한 알림을 수신합니다.

public static void playAd(@NonNull final String id, final AdConfig settings, @Nullable final PlayAdCallback listener)

playAd 메서드를 호출하기 전에 canPlayAd 메서드를 호출하여 광고 가용성을 항상 확인해야 합니다. playAd이(가) 반복적으로 잇달아 호출되는 경우 광고가 적절하게 렌더링되지 않으므로 추가 playAd을(를) 발행하기 전에 초기 playAd 호출의 onAdEnd 또는 onError 콜백을 수신했는지 확인해야 합니다.

if (Vungle.canPlayAd("PLACEMENT_ID")) { 
  Vungle.playAd("PLACEMENT_ID", null, new PlayAdCallback() { 
    @Override public void onAdStart(String placementReferenceId) { } 
    @Override public void onAdEnd(String placementReferenceId, boolean completed, boolean isCTAClicked) { } 
    @Override public void onError(String placementReferenceId, VungleException exception) { } 
  });
}

4 단계. 모든 전체 화면 광고 구성 (선택)

adConfig 개체를 playAd에 추가하여 재생하는 광고를 개별적으로 사용자 지정할 수 있는 옵션이 있습니다. AdConfig 개체가 null이 되는 경우, 광고가 기본 구성으로 재생될 수 있습니다. 또는 개체가 null이 아닌 경우, AdConfig setter에서 설정을 재지정할 수도 있습니다. 다음은 AdConfig 사용 방법에 대한 예입니다.

Vungle.playAd(placementReferenceID, adConfig, vunglePlayAdCallback);

위의 예에서는 맞춤형 구성 옵션이 포함된 adConfig 개체를 사용합니다. 다음과 같이 AdConfig 개체를 설정합니다.

AdConfig adConfig = new AdConfig();
adConfig.setAdOrientation(AdConfig.AUTO_ROTATE);
adConfig.setMuted(true);
Vungle.playAd(placementReferenceID, adConfig, vunglePlayAdCallback);

다음 목록은 사용 가능한 모든 AdConfig 옵션을 보여줍니다.

옵션

설명

setBackButtonImmediatelyEnabled

종료 광고 버튼이 표시되기 전에 뒤로 버튼이 활성화되어야 하는 경우 'true', 그렇지 않은 경우 'false'가 나타납니다

setAdOrientation

동영상 광고가 자동 회전하도록 되어 있는 경우 AdConfig.AUTO_ROTATE, 동영상 광고 방향을 따르도록 되어 있는 경우 AdConfig.LANDSCAPE 또는 AdConfig.PORTRAIT

setMuted

동영상이 주변의 어플리케이션의 설정 중 일치하는 오디오 설정으로 시작되어야 하는 경우 'false', 음소거로 시작되어야 하는 경우 'true'

setOrdinal

동일한 세션에서 재생되는 광고의 수를 추적하려면 서수의 정수 값을 사용합니다

참고: 여러 광고에 대해 동일한 AdConfig 개체를 사용할 수 있습니다.

5단계. 보상형 광고 사용자 정의 (선택)

팝업 메시지 대화 상자

보상형 광고에 대한 팝업 메시지 대화 상자는 setIncentivizedFields 메서드로 구성 가능합니다.

public static void setIncentivizedFields(@Nullable String userID, @Nullable String title, @Nullable String body, @Nullable String keepWatching, @Nullable String close)

보상 고려 사항

사용자 보상에 기준은 없습니다. 결정은 게임 경제에 따라 좌우됩니다. 개발자는 동영상 시청 옵션을 매력적으로 만들 수 있을 정도이면서도, 보상이 IAP 구매를 대체하지는 않을 정도로 사용자에게 보상해야 합니다. 사용자당 지급되는 보상의 수를 제한하기 위해 보상형 동영상에 일일 시청 횟수 제한을 두는 것도 중요합니다.

다음은 적당한 보상을 결정할 때 자문해 보아야 할 몇 가지 질문입니다.

  1. 연화와 경화 중 사용자에게 더 가치 있는 것은 무엇입니까?
    연화는 보상으로 제공하기에 더 저렴하긴 하지만 즉시 사용할 수 있기 때문에, 사용자가 더 적극적으로 동영상을 시청하려는 태도를 보일 수 있습니다. 또한 사용자에게 새로운 항목을 소개하는 방법으로 보상형 동영상을 사용하여 추후 IAP를 구매하도록 장려할 수 있습니다.
  2. 보상이 사용자에게 얼마나 매력적입니까?
    보상이 사용자가 실제로 필요로 하거나 원하는 것이면서 쉽게 얻을 수 없는 것인지 확인해보는 것이 좋습니다.
  3. 보상을 가장 일반적인 IAP와 비교하면 어떻습니까?
    보상이 IAP를 얻기 위한 디딤돌이 되거나 사용자가 원할 만한 것이지만 절대 구매하지 않는 것이기를 바랄 것입니다.
  4. 보상을 사용자가 게임을 통해 평균적으로 얻는 것과 비교하면 어떻습니까?
    사용자가 하나의 레벨을 플레이하여 동일한 보상을 획득하게 된다면 사용자는 15초의 시간을 투자해 보상을 받을 가치가 없다고 생각할 수 있습니다.
  5. 사용자당 일일 보상 수를 제한해야 합니까?
    네. 일일 시청 제한을 설정하면 사용자가 획득할 수 있는 무료 아이템/코인 수를 제어하는 데 도움이 됩니다.

Vungle 계정 관리 팀이 도와드리겠습니다. monetize@vungle.com으로 이메일을 보내주시기 바랍니다.

Questions?

Need further assistance, feel free to reach out to us, we’re here to help!

도움이 되었습니까?