#
Android
public class SudGIP {
/**
* Obtain the SDK version.
* @return
*/
public static String getVersion();
/**
* Get SDK version alias
* @return Example: "v1.1.52.xx-et"
* Minimum version: v1.1.52.xx
*/
public static String getVersionAlias();
/**
* Obtain the configuration.
* @return ISudCfg
* Minimum version: V1.1.46.xx
*/
public static ISudCfg getCfg();
/**
* Initialize SDK.
* @param model parameter
* @param listener
*/
public static void initSDK(SudInitSDKParamModel model, ISudListenerInitSDK listener);
/**
* Deinitialize SDK.
* @param listener
*/
public static void uninitSDK(ISudListenerUninitSDK listener);
/**
* Obtain the game list.
* @param listener
*/
public static void getMGList(ISudListenerGetMGList listener);
/**
* Load game.
* @param model parameter
* @param fsmMG listener
* @return Used to invoke the interfaces related to the game
*/
public static ISudFSTAPP loadMG(SudLoadMGParamModel model, ISudFSMMG fsmMG);
/**
* List of pre-loaded game packs
* @param context context
* @param mgIdList List of Game ids
* @param listener listener
*/
public static void preloadMGPkgList(Context context, List<Long> mgIdList, ISudListenerPreloadMGPkg listener);
/**
* Cancel preloading the game package
* @param mgIdList List of Game ids
*/
public static void cancelPreloadMGPkgList(List<Long> mgIdList);
/**
* Destroy game.
* @param fstApp
* @return
*/
public static boolean destroyMG(ISudFSTAPP fstApp);
/**
* Set statistics reporting callback on UI or Main Thread
* @param listener
* @return
*/
public static boolean setReportStatsEventListener(ISudListenerReportStatsEvent listener);
/**
* Set log level.
* @param logLevel
*/
public static void setLogLevel(int logLevel);
/**
* Set takeover log.
* @param logger
*/
public static void setLogger(ISudLogger logger);
/**
* Gets the directory for saving log files. Available starting from version v1.4.7.1218.
* @param context The context
* @return Note: Null check required
*/
public static String getLogDirPath(Context context);
}
public class SudInitSDKParamModel {
public Context context; // Context object
public String appId; // App ID generated by Sud
public String appKey; // App Key generated by Sud
public boolean isTestEnv; // true: Test environment, false: Production environment
public String userId; // User ID
}
public class SudLoadMGParamModel {
public int loadMGMode = SudLoadMGMode.kSudLoadMGModeNormal; // LoadMG mode, default is kSudLoadMGModeNormal
public Activity activity;
public String userId; // User ID, guaranteed to be unique by the business system
public String roomId; // Room ID, guaranteed to be unique by the business system. Used to enter the same room.
public String code; // Short-term token code
public long mgId; // Mini-game ID (same in both test and production environments)
public String language; // Game language, e.g., Simplified Chinese: zh-CN, Traditional Chinese: zh-TW, English: en-US, Malay: ms-MY, etc.
public String authorizationSecret; // Effective only when loadMGMode is kLoadMgModeCrossApp
}
iOS
@interface SudGIP : NSObject
/**
* Get SDK version
* @return Example: "1.1.35.286"
*/
+ (NSString*_Nonnull)getVersion;
/**
* Get SDK version alias
* @return Example: "v1.1.35.286-et"
*/
+ (NSString*_Nonnull)getVersionAlias;
+ (id<ISudCfg>_Nonnull)getCfg;
/**
* Initialize SDK
* @param model SudInitSDKParamModel
* @param listener ISudListenerInitSDK
* Minimum version: v1.1.54.xx
*/
+ (void)initSDK:(SudInitSDKParamModel*)model
listener:(ISudListenerInitSDK _Nullable )listener;
/**
* Uninitialize SDK
* @param listener ISudListenerUninitSDK
*/
+ (void)uninitSDK:(ISudListenerUninitSDK _Nullable )listener;
/**
* Get game list
* @param listener ISudListenerGetMGList
*/
+ (void)getMGList:(ISudListenerGetMGList _Nullable )listener;
/**
* Load game
* @param model SudLoadMGParamModel
* @param fsmMG ISudFSMMG
* @return ISudFSTAPP
* Minimum version: v1.1.54.xx
*/
+ (id<ISudFSTAPP>_Nonnull)loadMG:(SudLoadMGParamModel*_Nonnull)model
fsmMG:(id<ISudFSMMG>_Nonnull)fsmMG;
/**
* Destroy game
* @param fstAPP The object returned from loading the game ISudFSTAPP
* @return boolean
*/
+ (bool)destroyMG:(id<ISudFSTAPP>_Nonnull) fstAPP;
/**
* Preload game package list
* @param mgIdList List of game IDs
*/
+ (void) prepareGameList:(NSArray<NSNumber *> *) mgIdList listener:(id<ISudListenerPrepareGame>) listener;
/**
* Cancel preloading of game packages
* @param mgIdList List of game IDs
*/
+ (void) cancelPrepareGameList:(NSArray<NSNumber *> *) mgIdList;
/**
* Set statistics reporting callback
* @param listener Callback
* @return Return value
*/
+ (bool)setReportStatsEventListener:(ISudListenerReportStatsEvent)listener;
/**
* Set log level
* @param logLevel The level of log output, SudLogVERBOSE, SudLogDEBUG, SudLogINFO see ISudLogger.h
*/
+ (void)setLogLevel:(SudLogType)logLevel;
/// Get the local log storage path of the SDK
+ (NSString *_Nonnull)getLogDirPath;
/// Start network detection to check SDK connectivity in the current network environment
/// @param paramModel Detection parameters
/// @param listener Callback for detection results
+ (void)startNetworkDetection:(SudNetworkDetectionParamModel *)paramModel listener:(INetworkDetectionListener)listener;
@end
Web
class SudMGP {
/**
* Get SDK version
* @return
*/
public static getVersion(): string
/**
* Get SDK version alias
* @return Example: "v1.1.35.286-et"
*/
public static getVersionAlias(): string {
return Version.kVersionAlias
}
/**
* Get configuration. Minimum supported version is v1.1.46.449
* @return ISudCfg
*/
public static getSudCfg(): ISudCfg
/**
* Initialize SDK
* @param appId
* @param appKey
* @param bundleId // Domain origin
* @param isTestEnv
* @param listener
*/
public static initSDK(appId: string, appKey: string, bundleId: string, isTestEnv: boolean,listener: ISudListenerInitSDK): void
/**
* Uninitialize SDK
* @param listener
*/
public static void uninitSDK(listener: ISudListenerUninitSDK): void
/**
* Get game list
* @param listener
*/
public static void getMGList(listener: ISudListenerGetMGList): void
/**
* Load game
* @param userId
* @param roomId
* @param code
* @param mgId
* @param language
* @param fsmMG
* @param rootElm Element to be mounted
* @return
*/
public static ISudFSTAPP loadMG(
userId: string,
roomId: string,
code: string,
mgId: string,
language: string,
fsmMg: ISudFSMMG,
rootElm: HTMLElement
): ISudFSTAPP | null
/**
* Destroy game
* @param fstApp
* @return
*/
public static destroyMG(fstApp: ISudFSTAPP): boolean
/**
* Set user ID for statistics reporting
* @param userId
*/
public static setUserId(userId: string): void
/**
* Set log level
* @param logLevel
*/
public static setLogLevel(logLevel: number): void
/**
* Set logger takeover
* @param logger
*/
public static setLogger(logger: ISudLogger): void
}