跳转到主要内容

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) {
            // 基本展示
            rewardedAd.show(this)

            // 或带有可选的广告位和自定义数据用于跟踪
            // rewardedAd.show(this, "bonus_coins", "level:5,coins:100")
        } else {
            Log.w("CloudX", "激励视频广告尚未准备好")
        }
    }

    override fun onDestroy() {
        super.onDestroy()
        rewardedAd.destroy()
    }

    // CloudXRewardedListener 回调
    override fun onAdLoaded(cloudXAd: CloudXAd) {
        Log.d("CloudX", "激励视频广告已加载,来自 ${cloudXAd.networkName}")
    }

    override fun onAdLoadFailed(adUnitId: String, cloudXError: CloudXError) {
        Log.e("CloudX", "激励视频广告加载失败: ${cloudXError.message}")
    }

    override fun onAdDisplayed(cloudXAd: CloudXAd) {
        Log.d("CloudX", "激励视频广告已展示")
    }

    override fun onAdDisplayFailed(cloudXAd: CloudXAd, cloudXError: CloudXError) {
        Log.e("CloudX", "激励视频广告展示失败: ${cloudXError.message}")
    }

    override fun onAdHidden(cloudXAd: CloudXAd) {
        Log.d("CloudX", "激励视频广告已隐藏")
        // 为下次使用重新加载
        rewardedAd.load()
    }

    override fun onAdClicked(cloudXAd: CloudXAd) {
        Log.d("CloudX", "激励视频广告被点击")
    }

    override fun onUserRewarded(cloudXAd: CloudXAd, reward: CloudXReward) {
        Log.d("CloudX", "用户获得奖励: ${reward.amount} ${reward.label}")
        // 为用户发放奖励
    }

    // CloudXAdRevenueListener 回调
    override fun onAdRevenuePaid(cloudXAd: CloudXAd) {
        Log.d("CloudX", "激励视频竞价时收入: ${cloudXAd.revenue},来自 ${cloudXAd.networkName}")
        Log.d("CloudX", "激励视频展示时收入: ${cloudXAd.realizedRevenueUsd}")
    }
}