기술 자료

​
​

Development

User Acquisition

Monetization

산업 분야

Unity Ads Monetization

SDK 4.20.0

지원 가능
​

Android API reference

Unity Ads Monetization

SDK 4.20.0

지원 가능
​

이 페이지는 선택한 언어로 제공되지 않습니다.
Android developer guides
​
​
Android developer guides
  • Android SDK integration guide
  • Unity Ads privacy guide
  • Unity Ads SDK troubleshooting guide
  • Android developer API references
  1. Unity Ads SDK Android developer monetization
  2. Unity Ads SDK integration guide for Android developers

Implement rewarded ads in Android

Implement rewarded ads in your Android app. Load ad content, display it through Java code, and use a listener to manage ad events and reward logic.
읽는 시간 2분
최근 업데이트: 한 달 전

Rewarding users for watching ads increases user engagement, resulting in higher revenue. For example, games might reward users with in-game currency, consumables, additional lives, or experience-multipliers. For more information on how to effectively design your rewarded ads, refer to the monetization strategy guide.

Rewarded video ad load example

Call
show()
on the retained
RewardedAd
instance, passing the activity, a
ShowConfiguration
, and a
RewardedShowListener
. The listener provides
onStarted
,
onClicked
, and
onFailed
callbacks for standard ad lifecycle events, as well as two reward-specific callbacks:
onRewarded
, which fires when the user earns a reward, and
onCompleted
, which fires after it when the ad closes. Because both callbacks can fire in sequence, reward logic should be handled in only one of them, typically by checking a flag like
shouldAlwaysRewardUser()
to avoid granting the reward twice.
Ads expire a set time after they load if they aren't shown. Set
onAdExpired
on the loaded ad instance to detect this. This is especially relevant for rewarded ads since they're often preloaded and held until the user opts in. Calling
show()
on an expired ad fails, so use the callback to clear your stored reference and issue a new
load()
call so a fresh ad is ready when needed.
RewardedAd.load(loadConfig, (rewardedAd, error) -> { if (rewardedAd != null) { // Ad loaded successfully, ready to be shown this.rewardedAd = rewardedAd; rewardedAd.setOnAdExpired(expiredAd -> { this.rewardedAd = null; // reload here }); } else { // Handle load error }});
RewardedAd.load(loadConfig, { rewardedAd, error -> if (rewardedAd != null) { // Ad loaded successfully, ready to be shown this.rewardedAd = rewardedAd rewardedAd.onAdExpired = AdExpiredListener { _ -> this.rewardedAd = null // reload here } } else { // Handle load error }})

Rewarded video ad show example

rewardedAd.show(activity, showConfig, rewardedAdShowListener){ @Override public void onStarted(@NonNull InterstitialAd ad) { /* displayed */ } @Override public void onClicked(@NonNull InterstitialAd ad) { /* clicked */ } @Override public void onCompleted(@NonNull InterstitialAd ad, @NonNull ShowFinishState state) { /* hidden */ } @Override public void onFailed(@NonNull InterstitialAd ad, @NonNull UnityAdsError error) { /* failed */ } }
rewardedAd.show(activity, showConfig, rewardedAdShowListener){ @Override public void onStarted(@NonNull InterstitialAd ad) { /* displayed */ } @Override public void onClicked(@NonNull InterstitialAd ad) { /* clicked */ } @Override public void onCompleted(@NonNull InterstitialAd ad, @NonNull ShowFinishState state) { /* hidden */ } @Override public void onFailed(@NonNull InterstitialAd ad, @NonNull UnityAdsError error) { /* failed */ } }
Next steps: Refer to Implement banner ads in Android.

Copyright © 2026 Unity Technologies
법률 정보개인정보 처리방침쿠키Documentation Terms of Use개인 정보 판매 또는 공유 금지개인정보 보호 선택(쿠키 설정)

'Unity', Unity 로고 및 기타 Unity 상표는 미국 및 기타 지역 내 Unity Technologies 또는 그 계열사의 상표 또는 등록상표입니다(자세한 내용은 여기에서 확인하세요). 기타 명칭 또는 브랜드는 해당 소유자의 상표입니다.

일부 페이지는 편의를 위해 기계 번역되었으며 부정확한 내용이 있을 수 있습니다. 정보가 상충되는 경우, 영어 버전을 우선으로 참조하세요.

  • 보고 있는 페이지
    • Rewarded video ad load example

    • Rewarded video ad show example


이 페이지의 문제 보고