Documentation Index
Fetch the complete documentation index at: https://docs.cloudx.io/llms.txt
Use this file to discover all available pages before exploring further.
class MainActivity : AppCompatActivity(), CloudXRewardedListener, CloudXAdRevenueListener {
private lateinit var rewardedAd: CloudXRewardedAd
private fun createRewardedAd() {
rewardedAd = CloudX.createRewarded(this, "your-rewarded-ad-unit-id")
rewardedAd.listener = this
rewardedAd.revenueListener = this
rewardedAd.load()
}
private fun showRewardedAd() {
if (rewardedAd.isAdReady) {
// Basic show
rewardedAd.show(this)
// Or with optional placement and custom data for tracking
// rewardedAd.show(this, "bonus_coins", "level:5,coins:100")
} else {
Log.w("CloudX", "Rewarded ad not ready yet")
}
}
override fun onDestroy() {
super.onDestroy()
rewardedAd.destroy()
}
// CloudXRewardedListener callbacks
override fun onAdLoaded(cloudXAd: CloudXAd) {
Log.d("CloudX", "Rewarded ad loaded from ${cloudXAd.networkName}")
}
override fun onAdLoadFailed(adUnitId: String, cloudXError: CloudXError) {
Log.e("CloudX", "Rewarded ad failed to load: ${cloudXError.message}")
}
override fun onAdDisplayed(cloudXAd: CloudXAd) {
Log.d("CloudX", "Rewarded ad displayed")
}
override fun onAdDisplayFailed(cloudXAd: CloudXAd, cloudXError: CloudXError) {
Log.e("CloudX", "Rewarded ad failed to display: ${cloudXError.message}")
}
override fun onAdHidden(cloudXAd: CloudXAd) {
Log.d("CloudX", "Rewarded ad hidden")
// Reload for next use
rewardedAd.load()
}
override fun onAdClicked(cloudXAd: CloudXAd) {
Log.d("CloudX", "Rewarded ad clicked")
}
override fun onUserRewarded(cloudXAd: CloudXAd, reward: CloudXReward) {
Log.d("CloudX", "User rewarded: ${reward.amount} ${reward.label}")
// Grant the reward to the user
}
// CloudXAdRevenueListener callback
override fun onAdRevenuePaid(cloudXAd: CloudXAd) {
Log.d("CloudX", "Rewarded bid-time revenue: ${cloudXAd.revenue} from ${cloudXAd.networkName}")
Log.d("CloudX", "Rewarded realized revenue: ${cloudXAd.realizedRevenueUsd}")
}
}