Ad API
Ad API
ShowRewardedAd(adUnitId, onSuccess, onFail) (권장)
보상형 광고를 한 번의 호출로 표시합니다. 광고 로드, 표시, 실패 시 재시도 및 안내를 플랫폼이 자동으로 처리합니다.
파라미터:
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
adUnitId | string | ✅ | 광고 단위 ID |
onSuccess | Action<ShowRewardedAdResult> | - | 성공 콜백 |
onFail | Action<string> | - | 실패 콜백 |
성공 응답 (ShowRewardedAdResult):
| 필드 | 타입 | 설명 |
|---|---|---|
isEnded | bool | 광고 시청 완료 여부 |
TudadaSDK.Instance.ShowRewardedAd("ad-unit-id",
onSuccess: (result) => {
if (result.isEnded)
{
Debug.Log("보상 지급!");
GiveReward();
}
},
onFail: (err) => {
Debug.LogError("광고 표시 실패: " + err);
}
);
참고: 광고 로드 실패 시 플랫폼이 자동으로 재시도하고, 최종 실패 시 안내 팝업을 표시합니다. 게임에서 별도의 에러 처리 UI를 구현할 필요가 없습니다.
CreateRewardedVideoAd(adUnitId) (레거시)
보상형 비디오 광고 인스턴스를 생성합니다.
파라미터:
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
adUnitId | string | ✅ | 광고 단위 ID |
인스턴스 멤버 (TudadaRewardedVideoAd):
| 멤버 | 타입 | 설명 |
|---|---|---|
Load(onSuccess?, onFail?) | 메서드 | 광고 로드 |
Show(onSuccess?, onFail?) | 메서드 | 광고 표시 |
Destroy() | 메서드 | 인스턴스 파괴 |
IsLoaded | bool | 로드 완료 여부 |
IsDestroyed | bool | 파괴 여부 |
AdUnitId | string | 광고 단위 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()를 호출하여 정리하세요.