//
|
// SXGMSDK.h
|
// GMSDK
|
//
|
// Created by XHJ on 2021/6/8.
|
//
|
|
#import <Foundation/Foundation.h>
|
#import <UIKit/UIKit.h>
|
|
NS_ASSUME_NONNULL_BEGIN
|
|
|
|
@interface SXGMSDK : NSObject
|
|
/**
|
* @brief 获取SXGMSDK实例
|
*/
|
+(SXGMSDK *)shareSDK;
|
|
#pragma mark SXGMSDK 初始化配置
|
/**
|
* @brief 平台初始化方法
|
*
|
* @param appId 游戏在接入联运分配的appId
|
* @param gameVersion 游戏版本号
|
*
|
*
|
*/
|
- (void)initializeWithAppId:(NSString *)appId gameVersion:(NSString *)gameVersion;
|
|
/**
|
* @brief Facebook初始化方法
|
*/
|
- (void)fb_Init:(UIApplication *)application launchOptions:(NSDictionary *)launchOptions;
|
|
/**
|
* @brief Facebook OpenUrl方法
|
*/
|
- (void)fb_openURL:(UIApplication *)application openURL:(NSURL *)url options:(NSDictionary *)options;
|
|
/**
|
* @brief GoogleSign 初始化
|
*/
|
- (void)google_Init:(NSString *)clientId;
|
|
/**
|
@brief AppsFlyer 初始化
|
*/
|
- (void)AppsFlyer_Init:(NSString *)devkey appleAppID:(NSString *)appId;
|
|
|
/**
|
是否开启Log输出
|
|
@param isShowLog YES 开启; NO 关闭. 默认关闭
|
*/
|
- (void)isShowLog:(BOOL)isShowLog;
|
|
/**
|
显示悬浮框
|
*/
|
- (void)showFloatWindow;
|
|
/**
|
隐藏悬浮框
|
*/
|
- (void)dismissFloatWindow;
|
|
|
|
/**
|
分享
|
*/
|
- (void)share:(NSString *)title img:(UIImage * _Nullable)img;
|
|
/**
|
分享到facebook
|
*/
|
- (void)shareByfacebook:(NSString *)title img:(UIImage * _Nullable)img;
|
|
/**
|
* @brief SXGMSDK 登录界面入口
|
*
|
*/
|
-(void)UserLogin;
|
|
|
/**
|
* @brief SXGMSDK 账号界面
|
*/
|
-(void)ShowAccountView;
|
|
|
/**
|
* @brief 获取本次登录的token
|
*/
|
- (NSString*)token;
|
|
/**
|
* @brief 获取登录的UID, 用于标记一个用户
|
*/
|
-(NSString*)userUID;
|
|
/**
|
* @brief 当前登录用户名
|
*/
|
-(NSString*)userName;
|
|
/**
|
* @brief 当前登录的昵称
|
*/
|
-(NSString*)nickName;
|
|
/**
|
* @brief 当前登录的性别,男性: male, 女性: famale
|
*/
|
-(NSString*)userSex;
|
|
/**
|
* @brief 当前用户登录类型
|
*/
|
-(NSString*)loginType;
|
|
|
/**
|
* @brief 每个游戏的唯一ID
|
*/
|
-(NSString*)gameId;
|
|
/**
|
* @brief GMSDK 注销, 即退出登录
|
*
|
*/
|
-(void)UserLogout;
|
|
/**
|
提交角色信息接口
|
提交的时机为: 每次登录 或者每次退出 或者是 角色等级升级的时候 三个时段都调用那是最好的 . 至少满足角色等级升级的时候调用
|
|
@param serviceCode 区服
|
@param serviceTypeId 区服类型ID
|
@param serviceTypeName 区服类型名字
|
@param roleId 角色ID
|
@param roleName 角色名
|
@param level 等级
|
*/
|
-(void)submitRoleInfoWithServiceCode:(NSString *)serviceCode WithRoleId:(NSString *)roleId WithRoleName:(NSString *)roleName WithLevel:(NSString *)level WithServiceTypeId:(NSString *)serviceTypeId WithServiceTypeName:(NSString *)serviceTypeName;
|
|
/**
|
Get SDK version.
|
|
@return SXGMSDK version info.
|
*/
|
- (NSString *)getSDKVersion;
|
|
@end
|
|
|
#pragma mark ----- 充值、 支付
|
@interface SXGMSDK (Payment)
|
/**
|
创建订单
|
@param cpOrderId 游戏订单ID
|
@param money 订单金额
|
@param goodsId 商品ID
|
@param goodsName 商品名称
|
@param payType 支付类型apple,google
|
@param serviceCode 游戏服务器
|
@param role 角色Id
|
*/
|
|
-(void)CreatOrderWithCpOrderId:(NSString *)cpOrderId WithMoney:(NSString *)money WithGoodsId:(NSString *)goodsId WithGoodsName:(NSString *)goodsName WithPayType:(NSString *)payType WithServer:(NSString *)serviceCode WithRole:(NSString *)role WithExt:(NSString *)ext;
|
|
|
@end
|
|
#pragma mark ----- 记录事件
|
@interface SXGMSDK (AppFlys)
|
//Facebook
|
-(void)facebookTraceEvent:(NSString *)eventName param:(NSDictionary *)param;
|
|
|
/**
|
for AppsFly
|
*/
|
-(void)AppFlysStart;
|
-(void)AppFlysTraceEvent:(NSString *)eventName param:(NSDictionary *)param;
|
|
|
- (void)applicationDidBecomeActive:(UIApplication *)application;
|
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url options:(NSDictionary *) options;
|
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString*)sourceApplication annotation:(id)annotation;
|
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray * _Nullable))restorationHandler;
|
// Report Push Notification attribution data for re-engagements
|
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler;
|
|
- (void)scene:(UIScene *)scene openURLContexts:(NSSet<UIOpenURLContext *> *)URLContexts API_AVAILABLE(ios(13.0));
|
|
@end
|
|
NS_ASSUME_NONNULL_END
|