CSJUnionMacros.h 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. // CSJUnionMacros.h
  2. // CSJAdSDK
  3. //
  4. // Created by Siwant on 2019/8/20.
  5. // Copyright © 2019 bytedance. All rights reserved.
  6. //
  7. #import <Foundation/Foundation.h>
  8. //#if __has_include(<BURelyFoundation/BUBaseRequest.h>)
  9. //#import <BURelyFoundation/BUBaseRequest.h>
  10. //#else
  11. //#import "BUBaseRequest.h"
  12. //#endif
  13. #import "BUAgileLog.h"
  14. #define kBU_FTC @"BU_FTC"
  15. #define kBUTouchTrackerAssociatedKey @"kBUTouchTrackerAssociatedKey"
  16. #define BUNativeADContainerGertureRecognizer @"BUNativeADContainerGertureRecognizer"
  17. // ET测试总开关,正式上线发版时置0
  18. #define BUAdETTestOpen 0
  19. // 是否提供测试GPS功能,正式上线发版时置0
  20. #define BU_CN_DEVOPEN 0
  21. /// 版本号
  22. FOUNDATION_EXPORT NSString * const CSJSDKVersion;
  23. /***** LogTag *****/
  24. FOUNDATION_EXPORT NSString * const CSJLogTag_Native;
  25. FOUNDATION_EXPORT NSString * const CSJLogTag_Splash;
  26. FOUNDATION_EXPORT NSString * const CSJLogTag_Splash_FullLink;
  27. FOUNDATION_EXPORT NSString * const CSJLogTag_RewardedVideo;
  28. FOUNDATION_EXPORT NSString * const CSJLogTag_SplashBrandVideo;
  29. FOUNDATION_EXPORT NSString * const CSJLogTag_Other;
  30. FOUNDATION_EXPORT NSString * const CSJLogTag_WebView;
  31. FOUNDATION_EXPORT NSString * const CSJLogTag_Dynamic;
  32. FOUNDATION_EXPORT NSString * const CSJLogTag_RenderEngine;
  33. FOUNDATION_EXPORT NSString * const CSJLogTag_LoadDuration;
  34. FOUNDATION_EXPORT NSString * const CSJLogTag_ImageCache;
  35. FOUNDATION_EXPORT NSString * const CSJLogTag_TrackerReport;
  36. FOUNDATION_EXPORT NSString * const CSJLogTag_Playable;
  37. FOUNDATION_EXPORT NSString * const CSJLogTag_PlayableVideo;
  38. FOUNDATION_EXPORT NSString * const CSJLogTag_Bidding;
  39. FOUNDATION_EXPORT NSString * const CSJLogTag_CommonInfo;
  40. FOUNDATION_EXPORT NSString * const CSJLogTag_Track2;
  41. FOUNDATION_EXPORT NSString * const CSJLogTag_Shake;
  42. #define CSJLogDebug(tag, frmt, ...) BUALog(kBUALogDebug, tag, frmt, ##__VA_ARGS__)
  43. #define CSJLogInfo(tag, frmt, ...) BUALog(kBUALogInfo, tag, frmt, ##__VA_ARGS__)
  44. #define CSJLogWarn(tag, frmt, ...) BUALog(kBUALogWarn, tag, frmt, ##__VA_ARGS__)
  45. #define CSJLogError(tag, frmt, ...) BUALog(kBUALogError, tag, frmt, ##__VA_ARGS__)
  46. #define CSJ_ISKINDOFCLASS \
  47. - (BOOL)isKindOfClass:(Class)aClass {\
  48. \
  49. if (aClass == nil) return NO;\
  50. NSString *name = NSStringFromClass(aClass);\
  51. BOOL result = [super isKindOfClass:aClass];\
  52. if (!result && [name containsString:@"BU"]) {\
  53. NSString *targetname = [name stringByReplacingOccurrencesOfString:@"BU" withString:@"CSJ"];\
  54. result = [super isKindOfClass:NSClassFromString(targetname)];\
  55. return result; \
  56. }\
  57. return result;\
  58. }
  59. #define CSJ_ISMEMBEROFCLASS \
  60. - (BOOL)isMemberOfClass:(Class)aClass {\
  61. if (aClass == nil) return NO;\
  62. NSString *name = NSStringFromClass(aClass);\
  63. BOOL result = [super isMemberOfClass:aClass];\
  64. if (!result && [name containsString:@"BU"]) {\
  65. NSString *targetname = [name stringByReplacingOccurrencesOfString:@"BU" withString:@"CSJ"];\
  66. result = [super isMemberOfClass:NSClassFromString(targetname)];\
  67. return result; \
  68. }\
  69. return result;\
  70. }
  71. NS_INLINE NSInteger millisecondFrom(NSTimeInterval second) {
  72. NSInteger ms = 0;
  73. if (second >= DBL_MAX / 1000) {
  74. ms = round(DBL_MAX);
  75. } else {
  76. ms = round(second * 1000);
  77. }
  78. return ms;
  79. }