---
description: >-
  리워드 지급 시 일정 금액의 네이버페이 포인트를 추가 지급하는 상품입니다. 현재 보상형 광고 플러스는 v1.0, v1.5 버전으로 나누어
  지원 되며, 사용을 원하시는 분들은 pm@adpopcorn.com 으로 문의 바랍니다.
---

# 보상형 광고 플러스 연동(v1.5)

{% hint style="info" %}
보상형 광고 플러스 v1.5는 flutter plugin v1.0.10 이상의 버전부터 지원합니다.
{% endhint %}

## 1. 유저 식별값(USN) 입력

리워드 비디오 내 보상형 광고 플러스 기능을 활성화 및 활용하기 위해서는 반드시 유저의 식별값이 지정되어야 합니다.

유저 식별값은 리워드 비디오 시청 완료 시 완료 유저를 식별하기 위해 사용되는 값입니다.

{% hint style="danger" %}
**주의 사항**

1. 1명의 유저는 1개의 고유한 유저 식별값을 가져야 하며, 가변적인 값을 사용해서는 안됩니다.
2. 개인정보(이메일, 이름, 전화번호, 식별 가능한 유저 아이디 등)이 포함되어서는 안됩니다.
3. 한글, 특수 문자, 공백 등이 포함된 경우에는 반드시 URL 인코딩 처리를 하여 사용하여야 합니다.
4. 유저가 비디오 광고 로딩 전에 설정되어야 합니다.
5. <mark style="color:red;">**개발 서버에서 사용한 특정 USN값을 라이브 서버에서 유저가 할당받지 않도록 예외 처리를 하거나, 개발 서버에서 사용하는 USN은 별도 구분값을 설정해주셔야 합니다.**</mark>
{% endhint %}

위 주의사항에 유의하여 유저 식별값을 입력합니다.

```dart
AdPopcornSSP.setUserId('Your_User_ID');
```

&#x20;&#x20;

## 2. 보상형 광고 플러스 세팅 페이지 연동

유저의 CS 문의 및 현재 리워드 참여 횟수 확인을 위해서는 세팅 페이지 연동이 반드시 필요합니다.

유저의 보상형 광고 플러스 정보는 아래 API를 통해 확인 가능합니다.&#x20;

```dart
AdPopcornSSP.openRewardAdPlusPage('YOUR_APP_KEY', 'VERSION');

Ex>
AdPopcornSSP.openRewardAdPlusPage('1234567', '1.5');
```

현재 지원되는 버전은 1.5입니다. 이에 'VERSION'에는 '1.5'를 호출해  주세요

<figure><img src="https://50533756-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fqmkw7pJLtjFGD5fwChbN%2Fuploads%2FbKE2BuwrwC85oRR8jAik%2Fimage.png?alt=media&#x26;token=32b4699f-f36c-4aad-87f3-cce2ec359213" alt="" width="360"><figcaption></figcaption></figure>

## 3. 보상형 광고 플러스 이벤트 처리

보상형 광고 플러스에서 발생되는 아래 이벤트들에 대해선 이벤트 리스너로 이벤트를 전달해 줍니다.

* rewardAdPlusPageClosedListener : 보상형 광고 세팅 페이지 닫기
* rewardAdPlusEventResultListener : 1차 광고 완료 후 포인트 박스 지급 성공 or 실패에 대한 이벤트

```dart
AdPopcornSSP.setRewardAdPlusEventListener();
AdPopcornSSP.rewardAdPlusPageClosedListener = () {
};
AdPopcornSSP.rewardAdPlusEventResultListener = (resultCode, resultMessage) {
};
```

## 4. 보상형 광고 플러스 사용자 정보 조회

현재 유저의 사용 정보를 직접 조회하고자 할 땐, 아래의 API를 활용 가능합니다.

4.1 유저의 매체 전체 지면에 대한 정보 조회

```dart
AdPopcornSSP.getRewardAdPlusUserMediaStatus('app_key');
AdPopcornSSP.rewardAdPlusUserMediaStatusListener = (result, totalBoxCount, placementStatusList) {
};
```

위 API를 호출할 경우, rewardAdPlusUserMediaStatusListener를 통해, 아래의 정보가 내려옵니다.

* result : 조회 성공 여부
* totalBoxCount : 전체 받은 포인트 박스
* placementStatusList
  * dailyUserLimit : 일별 유저 한도
  * dailyUserCount : 일별 유저 참여 횟수
  * placementId : 조회 한 지면 키

4.2 유저의 지면별 정보 조회

```dart
AdPopcornSSP.getRewardAdPlusUserPlacementStatus('app_key', 'placementId');
AdPopcornSSP.rewardAdPlusUserPlacementStatusListener = (result, placementId, dailyUserLimit, dailyUserCount) { 
};
```

위 API를 호출할 경우, rewardAdPlusUserPlacementStatusListener 를 통해, 아래의 정보가 내려옵니다.

* result : 조회 성공 여부
* placementId : 조회 한 지면 키
* dailyUserLimit : 일별 유저 한도
* dailyUserCount : 일별 유저 참여 횟수
