ADCDN_ExpressRewardVideoAdManager.h 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. //
  2. // ADCDN_ExpressRewardVideoAdManager.h
  3. // ADCDN
  4. //
  5. // Created by 吃不胖的瘦子 on 2021/2/23.
  6. // Copyright © 2021 llh. All rights reserved.
  7. // 激励视频广告
  8. #import <Foundation/Foundation.h>
  9. #import <ADCDN/ADCDN_RewardVideoAdModel.h>
  10. #import <UIKit/UIKit.h>
  11. NS_ASSUME_NONNULL_BEGIN
  12. @class ADCDN_ExpressRewardVideoAdManager;
  13. /**
  14. * 代理协议方法
  15. */
  16. @protocol ADCDN_ExpressRewardVideoAdManagerDelegate <NSObject>
  17. /**
  18. * 加载成功
  19. */
  20. - (void)ADCDN_RewardVideoAdDidLoad:(ADCDN_ExpressRewardVideoAdManager *)rewardVideoAd;
  21. /**
  22. * 加载失败
  23. */
  24. - (void)ADCDN_RewardVideoAd:(ADCDN_ExpressRewardVideoAdManager *)rewardVideoAd didFailWithError:(NSError *_Nullable)error;
  25. /**
  26. * 下载成功
  27. */
  28. - (void)ADCDN_RewardVideoAdDidDownLoadVideo:(ADCDN_ExpressRewardVideoAdManager *)rewardVideoAd;
  29. /**
  30. * 点击广告
  31. */
  32. - (void)ADCDN_RewardVideoAdDidClick:(ADCDN_ExpressRewardVideoAdManager *)rewardVideoAd;
  33. /**
  34. * 曝光回调
  35. */
  36. - (void)ADCDN_RewardVideoAdDidBecomeVisible:(ADCDN_ExpressRewardVideoAdManager *)rewardVideoAd;
  37. /**
  38. * 视频播放完成
  39. */
  40. - (void)ADCDN_RewardVideoAdDidPlayFinish:(ADCDN_ExpressRewardVideoAdManager *)rewardedVideoAd didFailWithError:(NSError *_Nullable)error;
  41. /**
  42. * 播放完成点击关闭
  43. */
  44. - (void)ADCDN_RewardVideoAdDidClose:(ADCDN_ExpressRewardVideoAdManager *)rewardedVideoAd;
  45. /**
  46. 服务器核实回调成功
  47. Server verification which is requested asynchronously is succeeded.
  48. @param verify :return YES when return value is 2000.
  49. */
  50. - (void)ADCDN_RewardVideoAdServerRewardDidSucceed:(ADCDN_ExpressRewardVideoAdManager *)rewardedVideoAd verify:(BOOL)verify;
  51. /**
  52. 服务器核实回调失败
  53. Server verification which is requested asynchronously is failed.
  54. @param rewardedVideoAd express rewardVideo Ad
  55. @param error request error info
  56. Return value is not 2000.
  57. */
  58. - (void)ADCDN_RewardVideoAdServerRewardDidFail:(ADCDN_ExpressRewardVideoAdManager *)rewardedVideoAd error:(NSError *)error;
  59. @end
  60. @interface ADCDN_ExpressRewardVideoAdManager : NSObject
  61. // 控制器
  62. @property (nonatomic, weak)UIViewController *rootViewController;
  63. // 代理对象
  64. @property (nonatomic, weak, nullable) id<ADCDN_ExpressRewardVideoAdManagerDelegate> delegate;
  65. // 如果需要:服务器到服务器回调,则需要传递此数据模型
  66. @property (nonatomic,strong) ADCDN_RewardVideoAdModel *rewardVideoAdModel;
  67. /**
  68. * plcId - 广告位 ID
  69. */
  70. -(instancetype _Nullable)initWithPlcId:(NSString *_Nullable)plcId;
  71. /**
  72. * 加载广告
  73. */
  74. -(void)loadAd;
  75. /**
  76. 展示广告方法
  77. @param rootViewController 用于 present 激励视频 VC
  78. @return 是否展示成功
  79. 注:请在视频下载成功的回调之后执行此方法,才有效
  80. */
  81. - (BOOL)showAdFromRootViewController:(UIViewController *)rootViewController;
  82. @end
  83. NS_ASSUME_NONNULL_END