196 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			196 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			C#
		
	
	
	
|  | using System; | ||
|  | 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(); | ||
|  |          | ||
|  |         /// <summary> | ||
|  |         /// 获取插页广告收益信息 | ||
|  |         /// </summary> | ||
|  |         double GetInterstitialRevenue(); | ||
|  | 
 | ||
|  |         #endregion | ||
|  | 
 | ||
|  |         #region 激励广告功能 | ||
|  | 
 | ||
|  |         /// <summary> | ||
|  |         /// 加载激励广告 | ||
|  |         /// </summary> | ||
|  |         void LoadRewarded(); | ||
|  |          | ||
|  |         /// <summary> | ||
|  |         /// 检查激励广告是否可用 | ||
|  |         /// </summary> | ||
|  |         bool IsRewardedAvailable(); | ||
|  |          | ||
|  |         /// <summary> | ||
|  |         /// 显示激励广告 | ||
|  |         /// </summary> | ||
|  |         void DisplayRewarded(); | ||
|  |          | ||
|  |         /// <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; | ||
|  |     } | ||
|  | 
 | ||
|  | } |