XenonSDK.h 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. //
  2. // XenonSDK.h
  3. // XenonSDK
  4. //
  5. // Created by SAGESSE on 2019/1/20.
  6. // Copyright © 2019 SAGESSE. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. #import "XSUtils.h"
  10. #import "XSTracker.h"
  11. #import "XSCollector.h"
  12. #import "XSNetwork.h"
  13. #import "XSUser.h"
  14. #import "XSConfiguration.h"
  15. #import "XSDataCenter.h"
  16. #import "GMAdManager.h"
  17. #import <AudioToolbox/AudioToolbox.h>
  18. ///
  19. /// Game SDK
  20. ///
  21. @interface XenonSDK : NSObject
  22. @property (nonatomic, strong) XSUser* user;
  23. @property (nonatomic, strong) XSConfiguration* configuration;
  24. @property (nonatomic, strong) void(^sdk_loginCallback)(id user);
  25. @property (nonatomic, strong) void(^sdk_logoutCallback)(id user);
  26. @property (nonatomic, strong) UIView* bubbleView;
  27. @property (nonatomic, strong) UIViewController* rootViewController;
  28. @property (nonatomic, strong) NSString* appId;
  29. @property (nonatomic, strong) NSString* channelId;
  30. @property (nonatomic, strong) NSString* adId;
  31. @property (nonatomic, strong) NSString* adFlag;
  32. @property (nonatomic, readonly) NSBundle* bundle;
  33. @property (nonatomic, readonly) NSString* version;
  34. @property (nonatomic, readonly) NSString* shortVersion;
  35. @property (nonatomic, readonly) NSString* model;
  36. @property (nonatomic, readonly) NSString* advertisingIdentifier;
  37. @property (nonatomic, readonly) NSString* advertisingVendor;
  38. @property (nonatomic, strong) NSString* token;
  39. /// A sington instance of SDK.
  40. + (instancetype)sharedSDK;
  41. /// Init the sdk with application code.
  42. - (void)initWithParameter:(NSString*)parameter complete:(void (^)(NSError* error))complete;
  43. /// Login the sdk.
  44. - (void)loginWithComplete:(void (^)(id user, NSError* error))complete;
  45. /// Logout the sdk.
  46. - (void)logoutWithComplete:(void (^)(void))complete;
  47. /// Logout the game and sdk.
  48. - (void)logoutWhenNotification:(void (^)(void))handler;
  49. /// Buy a product.
  50. - (void)buy:(NSDictionary*)parameters complete:(void (^)(id order, NSError* error))complete;
  51. /// User Center.
  52. - (void)center;
  53. /// Report role info.
  54. - (void)reportWithRoleName:(NSString*)roleName level:(NSInteger)level serverId:(NSString*)serverId;
  55. ///check In-app Purchase lost list.
  56. - (void)checkOrderStatus;
  57. ///Google AM&ironSource Init
  58. - (void)GMAdSDKinit;
  59. ///横幅广告(优先级:AdMob >> ironSource)
  60. - (void)adBanner:(NSString*)adId;
  61. ///关闭广告( banner横幅, nativeAd原生)
  62. - (void)closeAd:(NSString*)adId;
  63. ///打开原生广告
  64. -(void)openNativeAdWithCenterX:(int)x Y:(int)y width:(int)w height:(int)h;
  65. ///打开视频激励广告
  66. -(void)openVideoAd:(NSString *)adName callback:(void (^)(BOOL))complete;
  67. ///打开积分墙广告
  68. -(void)openofferWallAd:(NSString *)adName callback:(void (^)(BOOL))complete;
  69. ///打开插页广告
  70. -(void)openInterstitialAd:(NSString *)adName callback:(void (^)(BOOL))complete;
  71. //广告是否加载好
  72. -(BOOL)isAvailableAd:(NSString *)adName;
  73. ///手机震动
  74. -(void)iphoneVibrate;
  75. ///跳转appstore评论
  76. -(void)skipToAppsotreWithID:(NSString *)appleId;
  77. ///自动登录
  78. - (void)xautoWithComplete:(void (^)(id user, NSError* error))complete;
  79. ///手动登录
  80. -(void)manualLogin;
  81. /// 统计事件1
  82. /// @param eventName 事件名称
  83. -(void)tjEvent:(NSInteger )eventName;
  84. /// 统计事件2
  85. /// @param eventName 事件名称
  86. /// @param parameters 事件对应值
  87. -(void)tjEvent:(NSInteger )eventName value:(id)parameters;
  88. @end