游戏SDK登录更新时间: 2024-10-18 15:06:00

一、前提条件

完成小米SDK隐私合规[点击直达]

二、功能说明

通过调用登录接口获得用户uid,sessionId及nickName,推荐将登录获得的uid与游戏自身用户Id进行绑定。

在用户每次启动游戏时,都需要调用登录接口获取最新的账号信息。

1、接口说明

/**
* 登录接口
* @param activity 游戏内Activity,在登录完成前不要finish
* @param onLoginProcessListener 登录回调
*/
MiCommplatform.getInstance().miLogin(final Activity activity, final OnLoginProcessListener onLoginProcessListener);

2、登录回调

public interface OnLoginProcessListener {
/**
* @param code 登录结果
* @param account 登录帐号信息
*/
void finishLoginProcess(int code, MiAccountInfo account);
}

3、登录结果

code说明
0登录成功
-12登录取消
-102登录失败
-18006登录操作正在进行中
-18008网络状态异常
其他登录失败

注:登录失败时请勿直接重新调用登录接口,应在用户主动点击时调用登录接口

4、登录帐号信息MiAccountInfo

参数类型说明
uidlong用户ID
sessionIdString用户授权session
nikenameString用户昵称

5、调用示例

MiCommplatform.getInstance().miLogin(context,​
new OnLoginProcessListener() {​
@Overridepublic void finishLoginProcess(int code, MiAccountInfo arg1) {​
switch (code) {​
case MiErrorCode.MI_XIAOMI_PAYMENT_SUCCESS: ​
// 登录成功​
//获取用户的登陆后的UID(即用户唯一标识)long uid = arg1.getUid();​
//以下为获取session并校验流程,如果是网络游戏必须校验,如果是单机游戏或应用可选//​
//获取用户的登陆的Session(请参考3.3 用户session验证接口)String session = arg1.getSessionId();​
//请开发者完成将uid和session提交给开发者自己服务器进行session验证break;​
case MiErrorCode.MI_XIAOMI_PAYMENT_ERROR_CANCEL:​
case MiErrorCode.MI_XIAOMI_PAYMENT_ERROR_PAY_CANCEL:​
// 取消登录​
break;​
case MiErrorCode.MI_XIAOMI_PAYMENT_ERROR_ACTION_EXECUTED:​
//登录操作正在进行中​
break;​
case MiErrorCode.MI_XIAOMI_ERROR_NETWORK_ERROR:​
//设备网络状态异常​
break;​
case MiErrorCode.MI_XIAOMI_PAYMENT_ERROR_LOGIN_FAIL:​
case MiErrorCode.MI_XIAOMI_PAYMENT_ERROR_PAY_FAILURE:​
default:​
// 登录失败​
break;​
}​
}​
});

三、Q&A

Q:登录接口调用失败

A:通常登录接口调用失败是以下原因:

1、未完成小米游戏SDK隐私合规

2、未完成小米游戏SDK初始化

3、包名、AppId、Appkey与开发者站不一致,请到开发者站进行确认;

上一篇:小米游戏SDK隐私合规

下一篇:小米游戏SDK支付