初始化
业务场景
游戏启动即调用,SDK 会完成内部的激活和初始化相关的配置
注意事项
-
游戏版本强制更新的注意点:
当 CP 需要对游戏进行强制更新时(即用户只能进新版本游戏包),必须使用 SDK 的更新机制。请提前通知我方运营团队,由运营团队在 SDK 后台配置相应的更新内容。请勿启用游戏自身的强制更新功能,以免影响游戏用户数据以及用户归因。 -
初始化接口调用顺序注意点:
其他接口(如无特殊说明)调用都必须在 SDK 初始化成功后,才能调用。
流程图
无
接口介绍
public void Init(InitConfig cfg)
调用示例
public class SDKDemoFairyUI : EworldSDKListener
{
//部分代码示例
void initSDK() {
InitConfig cfg = new InitConfig();
cfg.appId = "xxx";
cfg.appSecretKey = "xxxx";
cfg.islandscape = false;
SDKManager.GetInstance().Init(cfg);
}
//重写监听方法
public override void OnInitSuccess(InitData initData)
{
// 初始化成功的回调
}
public override void OnInitFail(ErrorInfo errorInfo)
{
// 初始化失败的回调
int errorCode = errorInfo.errorCode; // 错误码
string errorMsg = errorInfo.errorMsg; // 错误信息
}
}
参数说明
入参:InitConfig cfg
参数名称 | 类型 | 说明 | 必传/可选 | 最低版本 |
---|---|---|---|---|
appId | string | 接入 SDK 申请的 AppId | 必传 | |
appSecretKey | string | 接入 SDK 申请的 appSecretKey | 必传 | |
isLandscape | bool | 游戏横竖版标识,true 横版,false 竖版 | 可选 |
出参:InitData initData
参数名称 | 类型 | 说明 | 最低版本 |
---|---|---|---|
appId | string | 游戏包中 SDK 实际使用的 appId | |
areaId | string | 游戏大区 Id(使用场景:先锋服) | |
channelId | string | 游戏包中 SDK 实际使用的渠道 Id | |
privacyUrl | string | 隐私协议 url | |
userAgreementUrl | string | 用户协议 url | |
auditType | int | 游戏当前版本的审核状态,默认为 0 | |
userIPArea | int | 游戏当前用户 ip 归属地区,默认为 0 |
错误码
错误码 | 说明 |
---|---|
-100000 | 网络不可用,请检查网络 |
-100006 | 参数错误,请检查初始化参数 |
-100021 | 参数错误或不全,请检查初始化参数 |
FAQ
Q:游戏是否需要等初始化成功通知后,再继续执行游戏流程?
A:SDK 内部数据会依赖初始化成功的数据,所以建议游戏在初始化成功通知后,再继续后续的流程。
Q:SDK 初始化接口是否可以重复调用?
A:初始化接口不能重复调用,建议不要在游戏里多次调用,否则会导致数据埋点异常,影响用户数据的统计。
Q:先调初始化接口还是 onCreate 接口?
A:调用初始化接口前务必先调用生命周期中的 onCreate 接口,否则可能会出现问题
Q:初始化失败,提示:服务器没有返回数据[c202932::-100007]。
A:初始化参数有误导致,请使用正确的初始化参数,如有疑问,请找对接人员进行确认。
Q:初始化失败,提示:设备码使用类型不匹配,请检查相关配置[d54baa1e:10002:]。
A:AndroidManifest文件未配置EW_DEVICE_CODE_TYPE导致,请找对接人员进行确认。