GDTUnifiedNativeAd.h 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. //
  2. // GDTUnifiedNativeAd.h
  3. // GDTMobSDK
  4. //
  5. // Created by nimomeng on 2018/10/10.
  6. // Copyright © 2018 Tencent. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #import "GDTUnifiedNativeAdDataObject.h"
  10. #import "GDTUnifiedNativeAdView.h"
  11. NS_ASSUME_NONNULL_BEGIN
  12. @protocol GDTUnifiedNativeAdDelegate <NSObject>
  13. /**
  14. 广告数据回调
  15. @param unifiedNativeAdDataObjects 广告数据数组
  16. @param error 错误信息
  17. */
  18. - (void)gdt_unifiedNativeAdLoaded:(NSArray<GDTUnifiedNativeAdDataObject *> * _Nullable)unifiedNativeAdDataObjects error:(NSError * _Nullable)error;
  19. @end
  20. @interface GDTUnifiedNativeAd : NSObject
  21. @property (nonatomic, weak) id<GDTUnifiedNativeAdDelegate> delegate;
  22. /**
  23. 请求视频的时长下限。
  24. 以下两种情况会使用 0,1:不设置 2:minVideoDuration大于maxVideoDuration
  25. */
  26. @property (nonatomic) NSInteger minVideoDuration;
  27. /**
  28. 请求视频的时长上限,视频时长有效值范围为[5,180]。
  29. */
  30. @property (nonatomic) NSInteger maxVideoDuration;
  31. /**
  32. 可选属性,设置本次拉取的视频广告从用户角度看到的视频播放策略。
  33. “用户角度”特指用户看到的情况,并非SDK是否自动播放,与自动播放策略 GDTVideoAutoPlayPolicy 的取值并非一一对应
  34. 例如开发者设置了 GDTVideoAutoPlayPolicyNever 表示 SDK 不自动播放视频,但是开发者通过 GDTMediaView 的 play 方法播放视频,这在用户看来仍然是自动播放的。
  35. 准确的设置 GDTVideoPlayPolicy 有助于提高视频广告的eCPM值,如果广告位仅支持图文广告,则无需调用。
  36. 需要在 loadAd 前设置此属性。
  37. */
  38. @property (nonatomic, assign) GDTVideoPlayPolicy videoPlayPolicy;
  39. /**
  40. 可选属性,设置本次拉取的视频广告封面是由SDK渲染还是开发者自行渲染。
  41. SDK 渲染,指视频广告 containerView 直接在 feed 流等场景展示,用户可以直接看到渲染的视频广告。Demo 工程中的 “视频Feed” 就是 SDK 渲染。
  42. 开发者自行渲染,指开发者获取到广告对象后,先用封面图字段在 feed 流中先渲染出一个封面图入口,用户点击封面图,再进入一个有 conainterView 的详细页,播放视频。Demo 工程中的 "竖版 Feed 视频" 就是开发者渲染的场景。
  43. */
  44. @property (nonatomic, assign) GDTVideoRenderType videoRenderType;
  45. /**
  46. 构造方法
  47. @param placementId 广告位ID
  48. @return GDTUnifiedNativeAd 实例
  49. */
  50. - (instancetype)initWithPlacementId:(NSString *)placementId;
  51. /**
  52. 构造方法
  53. @param appId 媒体ID
  54. @param placementId 广告位ID
  55. @return GDTUnifiedNativeAd 实例
  56. */
  57. - (instancetype)initWithAppId:(NSString *)appId placementId:(NSString *)placementId GDT_DEPRECATED_MSG_ATTRIBUTE("接口即将废弃,请使用 initWithPlacementId:");
  58. /**
  59. 加载广告
  60. */
  61. - (void)loadAd;
  62. /**
  63. 加载广告
  64. @param adCount 加载条数
  65. */
  66. - (void)loadAdWithAdCount:(NSInteger)adCount;
  67. /**
  68. 返回广告平台名称
  69. @return 当使用流量分配功能时,用于区分广告平台;未使用时为空字符串
  70. */
  71. - (NSString *)adNetworkName;
  72. /**
  73. * 当需要支持 VAST 广告时,需流量自行配置 adapter 的 vastClassName
  74. */
  75. - (void)setVastClassName:(NSString *)vastClassName;
  76. @end
  77. NS_ASSUME_NONNULL_END