Appearance
登录相关 
WARNING
在游戏登录界面,调用登录接口时, 建议游戏先判断当前是否有初始化完成。 如果未初始化完成,可以再次调用初始化接口。
登录 
当玩家进入游戏登录界面、 或玩家手动点击【进入游戏】按钮并且此时玩家是未登录状态时, 游戏层可以调用登录接口。
js
window.XSDKApi.login(function(loginResult) {
    console.log('login result called:', loginResult)        
})处理登录回调 
不管SDK登录成功还是失败,都会触发回调函数。 其中参数loginResult是一个对象结构。
js
function(loginResult) {
    console.log('login result called:', loginResult)
    /**
     *  loginResult结构:
     *     ::code: 状态(int) 0: 登录成功;1:登录失败
     *     ::msg :  错误说明文字
     *     ::data: 用户数据(Object)
             *     ::uid: SDK中用户全局唯一ID, 游戏可以使用该ID绑定角色信息
             *     ::name:用户名
             *     ::token: token,游戏传给游戏服务器,游戏服务器去Server二次登录验证时需要该参数
     */         
}loginResult结构参考如下:
| 参数名称 | 参数类型 | 参数说明 | 
|---|---|---|
| code | Number | 状态 0:登录成功;1:登录失败 | 
| msg | String | 错误描述 | 
| data | Object | 用户信息,只有当code==0时,才有 | 
data对象包含如下信息:
| 参数名称 | 参数类型 | 参数说明 | 
|---|---|---|
| uid | String | 用户唯一ID | 
| name | String | 用户名, 普通用户名/手机号/设备号/第三方平台用户唯一ID(微信登录后这里对应的是unionId) | 
| loginName | String | 登录用户名 | 
| wxOpenID | String | 微信账号的open id, 只有当accountType为4的时候,才可能会有 | 
| accountType | String | 1:普通用户登录;2:手机号;3:设备号静默登录;4:微信;5:苹果;6:TapTap;7:抖音 | 
| newAccount | String | 1:新注册用户;0:活跃用户 | 
| token | String | 传给游戏服务器,去SDK服务端验证 | 
登出 
如果游戏中,有【登出】功能, 可以在玩家点击【登出】按钮时,调用下面的logout接口。
js
window.XSDKApi.logout();切换账号(可选) 
如果游戏的登录界面上面,有【切换账号】功能, 可以在玩家点击【切换账号】按钮时,调用下面接口。
objc
window.XSDKApi.logout();
window.XSDKApi.login(function(loginResult) {
    console.log('login result called:', loginResult)        
})服务端登录验证 
客户端登录成功后, 会返回loginResult.data对象给游戏层。 游戏层拿到后, 可以将里面userID、 token等数据, 传给游戏服务器。
游戏服务器通过调用服务端->登录认证API,验证token的合法性。
验证通过后, 才能让玩家进入游戏。