CSJActionServiceDefine.h 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. //
  2. // CSJActionServiceDefine.h
  3. // CSJAdSDK
  4. //
  5. // Created by carl on 2017/8/8.
  6. // Copyright © 2017年 bytedance. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. @class CSJDeepLink;
  10. @class CSJAppInfo;
  11. @class CSJVideoInfo;
  12. typedef NS_ENUM(NSInteger, BUAdDownloadActionType) {
  13. BUAdDownloadActionType_OpenUrl,
  14. BUAdDownloadActionType_FallBackUrl,
  15. BUAdDownloadActionType_DownloadUrl,
  16. BUAdDownloadActionType_UnKnown
  17. };
  18. /** 初始化成功回调 */
  19. typedef void (^SuccessCallback)(void);
  20. /** 初始化失败回调 */
  21. typedef void (^FailedCallback)(NSError *error,NSString *failMessage);
  22. /** 下载结果类型回调 */
  23. typedef void(^DownloadActionBlock)(BUAdDownloadActionType actionType);
  24. @protocol CSJActionWebModel <NSObject>
  25. // 创意的落地页URL
  26. @property (nonatomic, copy) NSString *targetURL;
  27. @property (nonatomic, copy) NSString *AdTitle;
  28. @end
  29. @protocol CSJActionPhoneModel <NSObject>
  30. // 广告类型为电话时,电话号码必须
  31. @property (nonatomic, copy) NSString *phone;
  32. @end
  33. @protocol CSJActionDeepLinkModel <NSObject>
  34. @property (nonatomic, strong) CSJDeepLink *deepLink;
  35. @property (nonatomic, copy) NSString *ulink;
  36. @end
  37. @protocol CSJActionAppModel <NSObject>
  38. // 应用名称
  39. @property (nonatomic, copy) NSString *appName;
  40. @property (nonatomic, copy) NSString *appid;
  41. // 应用下载URL,应用下载必须
  42. @property (nonatomic, copy) NSString *downloadURL;
  43. @end
  44. @protocol CSJActionVideoModel <NSObject>
  45. @property (nonatomic, copy) NSString *AdTitle;
  46. @property (nonatomic, copy) NSString *buttonText;
  47. @optional
  48. // 区分明暗投
  49. @property (nonatomic, assign) NSInteger unionSpecial;
  50. // 落地页链接
  51. @property (nonatomic, copy) NSString *targetURL;
  52. @property (nonatomic, strong) CSJAppInfo *appInfo;
  53. @property (nonatomic, strong) CSJVideoInfo *videoInfo;
  54. @end