using System.Collections; using System.Collections.Generic; using KwaiAds.Scripts.Api.Interstitial; using KwaiAds.Scripts.Api.Reward; using UnityEngine; namespace WZ { public class KwaiAdsManager : NormalSingleton { //目前都是测试id private const string appId = "899999"; private const string token = "EaCw0AipSYyvf3E7"; private const string rewardAdUnitId = "8999996001"; private const string interstitialAdUnitId = "8999996002"; /// /// 目前是千倍广告价值 /// public double rewardAdRevenue = 0; /// /// 插屏奖励价值 如果有竞价功能可能会用到 /// public double interstitiaAdRevenue = 0; private IRewardAdController rewardAdController; private IInterstitialAdController interstitialAdController; public void Init() { bool debug = true; // Whether in debug mode. Plsease set to false when in release build. var kwaiAdConfig = new KwaiAds.Scripts.Api.KwaiAdConfig.Builder() .SetAppId(appId) .SetToken(token) .SetAppName("App Name") // Optional .SetDebugLog(debug) // Optional .Build(); KwaiAds.Scripts.Api.KwaiAdsSdk.Initialize(kwaiAdConfig, new InitResultCallbackImpl()); } #region 激励广告 /// /// 加载激励广告 /// public void LoadRewardAd() { if (rewardAdController != null) { rewardAdController.Destroy(); rewardAdController = null; rewardAdRevenue = 0; } rewardAdController = KwaiAds.Scripts.Api.KwaiAdsSdk.SDK.getRewardAdController(); KwaiRewardAdRequest kwaiRewardAdRequest = new KwaiRewardAdRequest(rewardAdUnitId); rewardAdController.Load(kwaiRewardAdRequest, new RewardAdListener(), new RewardAdLoadListener()); } /// /// 展示激励广告 /// public void ShowRewardAd() { if (rewardAdController != null) { rewardAdController.Show(); } else { LoadRewardAd(); } } /// /// 广告播放完成 获得奖励 /// public void OnRewardAdCallback() { AdsSDKManager.Instance.OnRewardAdCallback(rewardAdRevenue); LoadRewardAd(); } #endregion #region 插屏 public void LoadInterstitialAd() { if (interstitialAdController != null) { interstitialAdController.Destroy(); interstitialAdController = null; interstitiaAdRevenue = 0; } interstitialAdController = KwaiAds.Scripts.Api.KwaiAdsSdk.SDK.getInterstitialAdController(); KwaiInterstitialAdRequest kwaiInterstitialAdRequest = new KwaiInterstitialAdRequest(interstitialAdUnitId); interstitialAdController.Load(kwaiInterstitialAdRequest, new InterstitialAdListener(), new InterstitialAdLoadListener()); } public void ShowInterstitialAd() { if (interstitialAdController != null) { interstitialAdController.Show(); } else { LoadInterstitialAd(); } } /// /// 广告播放完成 获得奖励 /// public void OnInterstitialCallback() { if (AdsSDKManager.Instance.IsMoreAdsBidding) { AdsSDKManager.Instance.OnRewardAdCallback(interstitiaAdRevenue); } LoadInterstitialAd(); } #endregion } }