#
Android
public class SudGIP {
/**
* 获取SDK版本
* @return
*/
public static String getVersion();
/**
* 获取SDK版本别名
* @return 示例:"v1.1.35.286-et"
*/
public static String getVersionAlias() {
return Version.kVersionAlias;
}
/**
* 获取配置 最低支持版本v1.1.46.449
* @return ISudCfg
*/
public static ISudCfg getCfg();
/**
* 初始化SDK
* @param model 参数
* @param listener 监听
*/
public static void initSDK(SudInitSDKParamModel model, ISudListenerInitSDK listener);
/**
* 反初始化SDK
* @param listener
*/
public static void uninitSDK(ISudListenerUninitSDK listener);
/**
* 获取游戏列表
* @param listener
*/
public static void getMGList(ISudListenerGetMGList listener);
/**
* 加载游戏
* @param model 参数
* @param fsmMG 回调
* @return 用于调用游戏相关的接口
*/
public static ISudFSTAPP loadMG(SudLoadMGParamModel model, ISudFSMMG fsmMG);
/**
* 预加载游戏包列表
* @param context 上下文
* @param mgIdList 游戏id列表
* @param listener 回调
*/
public static void preloadMGPkgList(Context context, List<Long> mgIdList, ISudListenerPreloadMGPkg listener);
/**
* 取消预加载游戏包
* @param mgIdList 游戏id列表
*/
public static void cancelPreloadMGPkgList(List<Long> mgIdList);
/**
* 销毁游戏
* @param fstApp
* @return
*/
public static boolean destroyMG(ISudFSTAPP fstApp);
/**
* 设置统计上报回调,回调在UI/Main线程
* @param listener
* @return
*/
public static boolean setReportStatsEventListener(ISudListenerReportStatsEvent listener);
/**
* 设置日志等级
* @param logLevel
*/
public static void setLogLevel(int logLevel);
/**
* 设置接管日志
* @param logger
*/
public static void setLogger(ISudLogger logger);
/**
* 获取保存日志文件的目录。v1.4.7.1218版本开始提供
* @param context 上下文
* @return 注意判空
*/
public static String getLogDirPath(Context context);
}
public class SudInitSDKParamModel {
public Context context; // 上下文
public String appId; // appId Sud生成
public String appKey; // appKey Sud生成
public boolean isTestEnv; // true:测试环境 false:生产环境
public String userId; // 用户id
}
public class SudLoadMGParamModel {
public int loadMGMode = SudLoadMGMode.kSudLoadMGModeNormal; // loadMG模式,默认为 kLoadMgModeNormal
public Activity activity;
public String userId; // 用户id 业务系统保证每个用户拥有唯一ID
public String roomId; // 房间ID,业务系统保证唯一性,进入同一房间内
public String code; // code 短期令牌Code
public long mgId; // 小游戏ID,测试环境和生产环境小游戏ID是一致的
public String language; // 游戏语言 比如:简体:zh-CN 繁体:zh-TW 英语:en-US 马来语:ms-MY 等
public String authorizationSecret; // 当loadMgMode为kLoadMgModeCrossApp时,该字段有效
}
iOS
@interface SudGIP : NSObject
/**
* 获取SDK版本
* @return 示例:"1.1.35.286"
*/
+ (NSString*_Nonnull)getVersion;
/**
* 获取SDK版本别名
* @return 示例:"v1.1.35.286-et"
*/
+ (NSString*_Nonnull)getVersionAlias;
+ (id<ISudCfg>_Nonnull)getCfg;
/**
* 初始化SDK
* @param model SudInitSDKParamModel
* @param listener ISudListenerInitSDK
* 最低版本:v1.1.54.xx
*/
+ (void)initSDK:(SudInitSDKParamModel*)model
listener:(ISudListenerInitSDK _Nullable )listener;
/**
* 反初始化SDK
* @param listener ISudListenerUninitSDK
*/
+ (void)uninitSDK:(ISudListenerUninitSDK _Nullable )listener;
/**
* 获取游戏列表
* @param listener ISudListenerGetMGList
*/
+ (void)getMGList:(ISudListenerGetMGList _Nullable )listener;
/**
* 加载游戏
* @param model SudLoadMGParamModel
* @param fsmMG ISudFSMMG
* @return ISudFSTAPP
* 最低版本:v1.1.54.xx
*/
+ (id<ISudFSTAPP>_Nonnull)loadMG:(SudLoadMGParamModel*_Nonnull)model
fsmMG:(id<ISudFSMMG>_Nonnull)fsmMG;
/**
* 销毁游戏
* @param fstAPP 加载游戏返回的对象ISudFSTAPP
* @return boolean
*/
+ (bool)destroyMG:(id<ISudFSTAPP>_Nonnull) fstAPP;
/**
* 预加载游戏包列表
* @param mgIdList 游戏ID列表
*/
+ (void) prepareGameList:(NSArray<NSNumber *> *) mgIdList listener:(id<ISudListenerPrepareGame>) listener;
/**
* 取消预加载游戏包
* @param mgIdList 游戏ID列表
*/
+ (void) cancelPrepareGameList:(NSArray<NSNumber *> *) mgIdList;
/**
* 设置统计上报回调
* @param listener 回调
* @return 返回值
*/
+ (bool)setReportStatsEventListener:(ISudListenerReportStatsEvent)listener;
/**
* 设置日志等级
* @param logLevel 输出log的等级,SudLogVERBOSE,SudLogDEBUG,SudLogINFO 见ISudLogger.h
*/
+ (void)setLogLevel:(SudLogType)logLevel;
/// 获取SDK本地日志存储路径
+ (NSString *_Nonnull)getLogDirPath;
/// 开启网络检测,检测当前网络环境下,SDK连通性
/// @param paramModel 检测参数
/// @param listener 检测结果回调
+ (void)startNetworkDetection:(SudNetworkDetectionParamModel *)paramModel listener:(INetworkDetectionListener)listener;
@end
Web
class SudMGP {
/**
* 获取SDK版本
* @return
*/
public static getVersion(): string
/**
* 获取SDK版本别名
* @return 示例:"v1.1.35.286-et"
*/
public static getVersionAlias(): string {
return Version.kVersionAlias
}
/**
* 获取配置 最低支持版本v1.1.46.449
* @return ISudCfg
*/
public static getSudCfg(): ISudCfg
/**
* 初始化SDK
* @param appId
* @param appKey
* @param bundleId // 域名 origin
* @param isTestEnv
* @param listener
*/
public static initSDK(appId: string, appKey: string, bundleId: string, isTestEnv: boolean,listener: ISudListenerInitSDK): void
/**
* 反初始化SDK
* @param listener
*/
public static void uninitSDK(listener: ISudListenerUninitSDK): void
/**
* 获取游戏列表
* @param listener
*/
public static void getMGList(listener: ISudListenerGetMGList): void
/**
* 加载游戏
* @param userId
* @param roomId
* @param code
* @param mgId
* @param language
* @param fsmMG
* @param rootElm 要挂载的元素
* @return
*/
public static ISudFSTAPP loadMG(
userId: string,
roomId: string,
code: string,
mgId: string,
language: string,
fsmMg: ISudFSMMG,
rootElm: HTMLElement
): ISudFSTAPP | null
/**
* 销毁游戏
* @param fstApp
* @return
*/
public static destroyMG(fstApp: ISudFSTAPP): boolean
/**
* 设置统计上报userId
* @param userId
*/
public static setUserId(userId: string): void
/**
* 设置日志等级
* @param logLevel
*/
public static setLogLevel(logLevel: number): void
/**
* 设置接管日志
* @param logger
*/
public static setLogger(logger: ISudLogger): void
}