AdPie
  • AdPie
    • 시작하기
  • Android
    • 프로젝트 설정
    • 광고 연동
      • 배너 광고
      • 전면 광고
      • 네이티브 광고
      • 리워드 비디오 광고
    • 미디에이션
      • 구글 애드몹
      • 구글 애드 매니저
      • 앱러빈
    • 공통
      • 에러코드
      • 디버깅
    • 변경내역
  • iOS
    • 프로젝트 설정
    • iOS 14+ 대응
    • 광고 연동
      • 배너 광고
      • 전면 광고
      • 네이티브 광고
      • 리워드 비디오 광고
    • 미디에이션
      • 구글 애드몹
      • 구글 애드 매니저
      • 앱러빈
    • 공통
      • 에러코드
      • 디버깅
      • 타겟팅
    • 변경내역
  • Flutter
    • 프로젝트 설정
    • 광고 연동
      • 배너 광고
      • 전면 광고
      • 리워드 비디오 광고
    • 공통
      • 에러코드
    • 변경내역
  • Unity
    • 프로젝트 설정
    • 광고 연동
      • 배너 광고
      • 전면 광고
      • 리워드 비디오 광고
    • 공통
      • 에러코드
    • 변경내역
  • Exchange
    • For Buyers
Powered by GitBook
On this page
  • 1 : 준비
  • 2 : 액티비티 추가
  • 3 : 광고 요청과 표출
  • 4 : 광고 타겟팅
  • 5 : SSV (Server-side verification) 설정
  • 6 : 광고 리스너 사용
  1. Android
  2. 광고 연동

리워드 비디오 광고

1 : 준비

  • 프로젝트 설정을 통해 광고 연동을 위한 준비를 한다.

  • 사이트 에서 매체를 등록하여 Media ID와 Slot ID 를 발급받는다.

2 : 액티비티 추가

  • AndroidManifest.xml에서 <application> 태그 안에 activity를 추가한다.

<activity
    android:name="com.gomfactory.adpie.sdk.videoads.VideoFullScreenActivity"
    android:configChanges="keyboardHidden|orientation|screenSize" />

3 : 광고 요청과 표출

  • SDK 초기화를 하지 않았다면, 사이트에서 발급받은 Media ID를 입력하여 초기화를 해준다.

  • 사이트에서 발급받은 Slot ID를 입력하여 RewardedVideoAd 객체를 생성한다.

  • 광고 요청과 표출로 메소드가 각각 나누어져 있다.

  • 광고 요청시 load() 메소드를 호출하고, 표출 시 show()를 호출을 한다.

  • 광고 컨텐츠가 로드되지 않을 가능성이 있기에 isLoaded()를 통해 확인 후 show() 메소드를 호출한다.

private RewardedVideoAd rewardedVideoAd;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // SDK 초기화로 앱실행 1회만 호출한다. (Main Activity 에 필수로 입력한다.)
    AdPieSDK.getInstance().initialize(getApplicationContext(), "AdPie-Media-ID");

    ...

    // 광고 연동을 위한 슬롯 ID를 필수로 입력한다.
    rewardedVideoAd = new RewardedVideoAd(this, "AdPie-Slot-ID");
    rewardedVideoAd.load();
}

4 : 광고 타겟팅

  • 타겟팅 적용으로 보다 높은 수익을 얻을 수 있다.

  • 형태 : 성별, 위치, 나이 또는 출생일(YYYY)

TargetingData targetingData = new TargetingData.Builder()
    .setGender(TargetingData.Gender.MALE)
    .setAge(30)
    .setYearOfBirthday(1970)
    .build();
// 광고 요청시 타겟팅 정보를 넣어준다.
rewardedVideoAd.load(targetingData);

5 : SSV (Server-side verification) 설정

  • SSV 설정은 선택사항으로 필요한 경우에만 설정하여 사용할 수 있다.

  • SSV 설정은 보상 이벤트가 발생될 때 개발사에서 등록한 Callback URL을 Server to Server 방식으로 호출을 하기 위한 설정이다.

  • SSV 설정에 대한 호출 조건은 아래와 같다.

    • 대시보드를 통해 Callback URL (SSV URL)이 등록되어 있어야 한다.

    • 비디오 시청 완료 후 보상 이벤트가 발생해야 한다.

    • 필요한 경우, 광고 요청 전에 SDK를 통해 USER ID 및 CUSTOM DATA 정보를 설정한다.

  • 클라이언트에서 설정한 USER ID 와 CUSTOM DATA 정보가 있다면 Callback URL (SSV URL)에 포함되어 호출하도록 적용되어 있다.

    • (예시) https://callback_url?param=value&userid=valule&customdata=value

    • 해당 설정은 반드시 광고 요청 전에 호출해야 정상적으로 데이터가 Callback URL (SSV URL)에 포함된다.

  • SDK v1.9.9 이상에서 동작하며 이전 버전에서는 동작하지 않는다.

rewardedVideoAd.setUserIdForSSV("<USER_ID>");
rewardedVideoAd.setCustomDataForSSV("<CUSTOM_DATA>");

6 : 광고 리스너 사용

  • 광고 요청에 대한 이벤트를 수신할 수 있다.

  • 광고 수신 후 바로 노출하지 않는 경우에는 onRewardedVideoFinished 에서 광고를 재요청하는 로직을 추천한다.

  • 에러코드를 통해 광고 실패에 대한 이유를 알 수 있다.

rewardedVideoAd.setAdListener(new RewardedVideoAd.RewardedVideoAdListener() {
	
    @Override
    public void onRewardedVideoLoaded() {
	    // 광고 로딩 완료 후 이벤트 발생

        // 광고 요청 후 즉시 노출하고자 할 경우 아래의 코드를 추가한다.
        if (rewardedVideoAd.isLoaded()) {
            // 광고 표출
            rewardedVideoAd.show();
        }
    }

    @Override
    public void onRewardedVideoFailedToLoad(int errorCode) {
	    // 광고 요청 실패 후 이벤트 발생 
    }

    @Override
    public void onRewardedVideoClicked() {
        // 광고 클릭 후 이벤트 발생
    }

    @Override
    public void onRewardedVideoStarted() {
        // 동영상 광고 시작 알림
    }

    @Override
    public void onRewardedVideoFinished(FinishState finishState) {
        // 동영상 광고 종료 알림

        switch (finishState) {
            case ERROR: // 동영상 광고 오류
            case SKIPPED: // 동영상 광고 건너뜀
            case COMPLETED: // 동영상 광고 시청완료
                break;
        }
    }
});
Previous네이티브 광고Next미디에이션

Last updated 8 months ago