Skip to content

Rewarded Ads

Rewarded ads let you offer users in-app items—such as continued gameplay, virtual currency, or other rewards—in exchange for their engagement with ads. Rewarded ads boost engagement because users receive a tangible benefit for their time.

This guide shows you how to integrate rewarded ads into an your app.

Load ad

Create an instance of CTReward, passing in the placementId and calling the loadAd method.

  • Java
java

CTAdRequest adRequest = new CTAdRequest.Builder()
    .setPlacementId("REWARD_PLACEMENT_ID")// [necessary] placementId from carty publisher
    .setMute(true)// [optional] does video ads mute play, sdk default value true
    .build();
CTReward ctReward = new CTReward(adRequest);
ctReward.loadAd();
  • kotlin
kotlin

val adRequest = CTAdRequest.Builder()
    .setPlacementId("REWARD_PLACEMENT_ID")// [necessary] placementId from carty publisher
    .setMute(true)// [optional] does video ads mute play, sdk default value true
    .build()
val ctReward = CTReward(adRequest)
ctReward.loadAd()

Register Listener

It is recommended to register a listener before calling the CTReward.loadAd method.

java

ctReward.setRewardAdListener(new CTRewardAdListener() {
    @Override
    public void onLoaded(CTBaseAd baseAd) {
    }

    @Override
    public void onLoadFailed(CTAdError adError) {
    }

    @Override
    public void onShown(CTBaseAd baseAd) {
    }

    @Override
    public void onShowFailed(CTBaseAd baseAd, CTAdError adError) {
    }

    @Override
    public void onClicked(CTBaseAd baseAd) {
    }

    @Override
    public void onClosed(CTBaseAd baseAd) {
    }

    @Override
    public void onRewarded(CTBaseAd baseAd, Map<String, Object> rewardMap) {
    }

    @Override
    public void onVideoPlay(CTBaseAd baseAd) {
    }

    @Override
    public void onVideoComplete(CTBaseAd baseAd) {
    }
});
  • kotlin
kotlin

ctReward.setRewardAdListener(object : CTRewardAdListener {
    override fun onLoaded(baseAd: CTBaseAd?) {
    }

    override fun onLoadFailed(adError: CTAdError?) {
    }

    override fun onShown(baseAd: CTBaseAd?) {
    }

    override fun onShowFailed(baseAd: CTBaseAd?, adError: CTAdError?) {
    }

    override fun onClicked(baseAd: CTBaseAd?) {
    }

    override fun onClosed(baseAd: CTBaseAd?) {
    }

    override fun onRewarded(baseAd: CTBaseAd?, rewardMap: Map<String?, Any?>?) {
    }

    override fun onVideoPlay(baseAd: CTBaseAd?) {
    }

    override fun onVideoComplete(baseAd: CTBaseAd?) {
    }
})

Make sure ad ready

Before you showAd, you need to check if the ad is ready.

java

ctReward.isReady();
  • kotlin
kotlin

ctReward.isReady()

Display ad

Call showAd on the CTReward object that you instantiated.

java

ctReward.showAd(activity);
  • kotlin
kotlin

ctReward.showAd(activity)

Others

Server-to-Server (S2S) Reward

Examples on GitHub