본문으로 건너뛰기

Ad API

Ad API

ShowRewardedAd(adUnitId, onSuccess, onFail) (권장)

보상형 광고를 한 번의 호출로 표시합니다. 광고 로드, 표시, 실패 시 재시도 및 안내를 플랫폼이 자동으로 처리합니다.

파라미터:

파라미터타입필수설명
adUnitIdstring광고 단위 ID
onSuccessAction<ShowRewardedAdResult>-성공 콜백
onFailAction<string>-실패 콜백

성공 응답 (ShowRewardedAdResult):

필드타입설명
isEndedbool광고 시청 완료 여부
TudadaSDK.Instance.ShowRewardedAd("ad-unit-id",
onSuccess: (result) => {
if (result.isEnded)
{
Debug.Log("보상 지급!");
GiveReward();
}
},
onFail: (err) => {
Debug.LogError("광고 표시 실패: " + err);
}
);

참고: 광고 로드 실패 시 플랫폼이 자동으로 재시도하고, 최종 실패 시 안내 팝업을 표시합니다. 게임에서 별도의 에러 처리 UI를 구현할 필요가 없습니다.

CreateRewardedVideoAd(adUnitId) (레거시)

보상형 비디오 광고 인스턴스를 생성합니다.

파라미터:

파라미터타입필수설명
adUnitIdstring광고 단위 ID

인스턴스 멤버 (TudadaRewardedVideoAd):

멤버타입설명
Load(onSuccess?, onFail?)메서드광고 로드
Show(onSuccess?, onFail?)메서드광고 표시
Destroy()메서드인스턴스 파괴
IsLoadedbool로드 완료 여부
IsDestroyedbool파괴 여부
AdUnitIdstring광고 단위 ID
OnLoad이벤트로드 완료
OnError이벤트에러 발생
OnClose이벤트닫기 (isEnded 포함)
// 광고 인스턴스 생성
TudadaRewardedVideoAd rewardedAd = TudadaSDK.Instance.CreateRewardedVideoAd("ad-unit-id");

// 이벤트 등록
rewardedAd.OnLoad += () => {
Debug.Log("광고 로드 완료");
};

rewardedAd.OnError += (err) => {
Debug.LogError("광고 에러: " + err.errMsg);
};

rewardedAd.OnClose += (result) => {
if (result.isEnded)
{
// 사용자가 끝까지 시청 → 보상 지급
Debug.Log("보상 지급!");
GiveReward();
}
else
{
// 중간에 닫음
Debug.Log("광고 중간 종료");
}

// 다음 광고를 위해 재로드
rewardedAd.Load();
};

// 광고 로드
rewardedAd.Load(
onSuccess: (result) => Debug.Log("로드 성공"),
onFail: (err) => Debug.LogError("로드 실패: " + err)
);

광고 표시:

// 로드 완료 후 표시
if (rewardedAd.IsLoaded)
{
rewardedAd.Show(
onSuccess: (result) => Debug.Log("광고 표시"),
onFail: (err) => Debug.LogError("표시 실패: " + err)
);
}

중요: 사용이 끝난 광고 인스턴스는 Destroy()를 호출하여 정리하세요.