205 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			205 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			C#
		
	
	
	
| using System;
 | |
| using Script.SDKManager.AdsSDKManager.Constant;
 | |
| 
 | |
| namespace Script.Common
 | |
| {
 | |
|     /// <summary>
 | |
|     /// 提供广告SDK功能的统一接口
 | |
|     /// </summary>
 | |
|     public interface IAdService
 | |
|     {
 | |
|         /// <summary>
 | |
|         /// 获取广告客户端名称
 | |
|         /// </summary>
 | |
|         string ClientName { get; }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 初始化广告SDK
 | |
|         /// </summary>
 | |
|         void Initialize();
 | |
| 
 | |
|         #region 横幅广告功能
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 加载横幅广告
 | |
|         /// </summary>
 | |
|         void LoadBanner();
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 检查横幅广告是否可用
 | |
|         /// </summary>
 | |
|         bool IsBannerAvailable();
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 显示横幅广告
 | |
|         /// </summary>
 | |
|         void DisplayBanner();
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 隐藏横幅广告
 | |
|         /// </summary>
 | |
|         void HideBanner();
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 获取横幅广告收益信息
 | |
|         /// </summary>
 | |
|         double GetBannerRevenue();
 | |
| 
 | |
|         #endregion
 | |
| 
 | |
|         #region 插页广告功能
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 加载插页广告
 | |
|         /// </summary>
 | |
|         void LoadInterstitial();
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 检查插页广告是否可用
 | |
|         /// </summary>
 | |
|         bool IsInterstitialAvailable();
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 显示插页广告
 | |
|         /// </summary>
 | |
|         void DisplayInterstitial(string _adPos, IvType _IvType = IvType.IV1, Action _closeCallback = null);
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 获取插页广告收益信息
 | |
|         /// </summary>
 | |
|         double GetInterstitialRevenue();
 | |
| 
 | |
|         #endregion
 | |
| 
 | |
|         #region 激励广告功能
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 加载激励广告
 | |
|         /// </summary>
 | |
|         void LoadRewarded();
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 检查激励广告是否可用
 | |
|         /// </summary>
 | |
|         bool IsRewardedAvailable();
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 显示激励广告
 | |
|         /// </summary>
 | |
|         void DisplayRewarded(string _adPos, Action<bool> _rewardCallback = null, Action _showFailedCallback = null);
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 获取激励广告收益信息
 | |
|         /// </summary>
 | |
|         double GetRewardedRevenue();
 | |
| 
 | |
|         #endregion
 | |
| 
 | |
|         #region 开屏广告功能
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 加载开屏广告
 | |
|         /// </summary>
 | |
|         void LoadSplash();
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 检查开屏广告是否可用
 | |
|         /// </summary>
 | |
|         bool IsSplashAvailable();
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 显示开屏广告
 | |
|         /// </summary>
 | |
|         void DisplaySplash();
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 获取开屏广告收益信息
 | |
|         /// </summary>
 | |
|         double GetSplashRevenue();
 | |
| 
 | |
|         #endregion
 | |
| 
 | |
|         #region 原生广告功能
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 加载原生广告
 | |
|         /// </summary>
 | |
|         void LoadNative();
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 检查原生广告是否可用
 | |
|         /// </summary>
 | |
|         bool IsNativeAvailable();
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 显示原生广告
 | |
|         /// </summary>
 | |
|         /// <param name="position">广告位置和尺寸信息</param>
 | |
|         void DisplayNative(NativeAdPosition position);
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 移除原生广告
 | |
|         /// </summary>
 | |
|         void RemoveNative();
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 获取原生广告收益信息
 | |
|         /// </summary>
 | |
|         double GetNativeRevenue();
 | |
| 
 | |
|         #endregion
 | |
|     }
 | |
| 
 | |
|     /// <summary>
 | |
|     /// 表示处理回调的信息
 | |
|     /// </summary>
 | |
|     [Serializable]
 | |
|     public struct CallbackResult
 | |
|     {
 | |
|         /// <summary>
 | |
|         /// 回调消息
 | |
|         /// </summary>
 | |
|         public string Message;
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 指示广告是否准备就绪
 | |
|         /// </summary>
 | |
|         public bool IsReady;
 | |
|     }
 | |
| 
 | |
|     /// <summary>
 | |
|     /// 表示原生广告的位置和尺寸
 | |
|     /// </summary>
 | |
|     [Serializable]
 | |
|     public class NativeAdPosition
 | |
|     {
 | |
|         /// <summary>
 | |
|         /// X坐标
 | |
|         /// </summary>
 | |
|         public int X;
 | |
| 
 | |
|         /// <summary>
 | |
|         /// Y坐标
 | |
|         /// </summary>
 | |
|         public int Y;
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 广告宽度
 | |
|         /// </summary>
 | |
|         public int Width;
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 广告高度
 | |
|         /// </summary>
 | |
|         public int Height;
 | |
|     }
 | |
|     
 | |
|         [System.Serializable]
 | |
|         public struct HandCallbackInfo
 | |
|         {
 | |
|             public string msg;
 | |
|             public bool isReady;
 | |
|         }
 | |
| 
 | |
| }
 |