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