initializeWithConfiguration:completion:
SDK 初始化
初始化 SUDOP SDK 环境。该方法是使用 SDK 所有功能的前置条件,必须在调用其他 API(如 authWithUserSignature: 或 startGame:)之前调用。建议在应用启动时(例如 application:didFinishLaunchingWithOptions:)进行初始化。
方法声明
objectivec
/**
Initialize the SDK.
@param configuration The configuration used to initialize the SDK environment.
@param completion Called when initialization finishes.
*/
+ (void)initializeWithConfiguration:(SUDOPSDKConfiguration *)configuration
completion:(nullable SUDOPCompletion)completion;参数说明
| 参数名 | 类型 | 必传 | 描述 |
|---|---|---|---|
| configuration | SUDOPSDKConfiguration * | 是 | 包含 appId、appKey的配置对象,用于身份校验和环境配置。 |
| completion | SUDOPCompletion | 否 | 异步初始化完成后的回调。如果初始化失败,error 对象将包含具体错误信息。 |
SUDOPSDKConfiguration 属性详情
- appId: 必填。在控制台申请的唯一应用标识。
- appKey: 必填。用于请求签名的加密密钥。
返回值
无(通过 completion block 异步返回结果)。
代码示例
objectivec
SUDOPSDKConfiguration *config = [[SUDOPSDKConfiguration alloc] init];
config.appId = @"your_app_id";
config.appKey = @"your_app_key";
config.code = @"your_auth_code";
[SUDOP initializeWithConfiguration:config completion:^(NSError * _Nullable error) {
if (error) {
NSLog(@"SDK 初始化失败: %@", error.localizedDescription);
} else {
NSLog(@"SDK 初始化成功");
// 此处可以开始进行后续操作,如 authWithUserSignature:
}
}];注意事项
- 单次调用:SDK 生命周期内通常只需调用一次。若需要更改配置,请先调用
uninitialize。 - 线程安全:该方法建议在主线程调用。回调
completion通常也会在主线程触发。 - 网络依赖:初始化过程可能涉及网络请求验证
appId的有效性,请确保设备网络通畅。 - 错误处理:如果收到的
error不为空,请检查网络状态及appId/appKey是否匹配,不要在初始化失败的情况下调用游戏启动接口。