광고 컨텐츠가 로드되지 않을 가능성이 있기에 IsLoaded()를 통해 확인 후 Show() 메소드를 호출한다.
{
// 광고 연동을 위한 슬롯 ID를 필수로 입력한다.
RewardedVideoAd rewardedVideoAd = new RewardedVideoAd("AdPie-Slot-ID");
rewardedVideoAd.Load();
}
4 : 광고 리스너 사용
광고 요청에 대한 이벤트를 수신할 수 있다.
{
RewardedVideoAd rewardedVideoAd = new RewardedVideoAd("AdPie-Slot-ID");
rewardedVideoAd.OnRewardedVideoLoaded += RewardedVideoAd_OnRewardedVideoLoaded;
rewardedVideoAd.OnRewardedVideoFailedToLoad += RewardedVideoAd_OnRewardedVideoFailedToLoad;
rewardedVideoAd.OnRewardedVideoClicked += RewardedVideoAd_OnRewardedVideoClicked;
rewardedVideoAd.OnRewardedVideoStarted += RewardedVideoAd_OnRewardedVideoStarted;
rewardedVideoAd.OnRewardedVideoFinished += RewardedVideoAd_OnRewardedVideoFinished;
rewardedVideoAd.Load();
}
void RewardedVideoAd_OnRewardedVideoLoaded()
{
// 광고 로딩 완료 후 이벤트 발생
// 광고 요청 후 즉시 노출하고자 할 경우 아래의 코드를 추가한다.
if (rewardedVideoAd != null && rewardedVideoAd.IsLoaded())
{
rewardedVideoAd.Show();
}
}
void RewardedVideoAd_OnRewardedVideoFailedToLoad(int errorCode)
{
// 광고 요청 또는 표출 실패 후 이벤트 발생
}
void RewardedVideoAd_OnRewardedVideoClicked()
{
// 광고 클릭 후 이벤트 발생
}
void RewardedVideoAd_OnRewardedVideoStarted()
{
// 리워드 동영상 광고 시작 이벤트 발생
}
void RewardedVideoAd_OnRewardedVideoFinished(int finishState)
{
// 리워드 동영상 광고 종료 이벤트 발생
string state = "";
switch(finishState) {
case 0:
state = "UNKNOWN";
break;
case 1:
// 동영상 광고 시청완료
state = "COMPLETED";
break;
case 2:
// 동영상 광고 오류
state = "ERROR";
break;
case 3:
// 동영상 광고 건너뜀
state = "SKIPPED";
break;
}
}