fix(sdk): 修复登录数据处理和账户绑定功能

- 修改Android端登录数据结构,统一使用loginData字段
- 添加JSON异常处理机制,避免解析错误导致崩溃
- 修复Unity端登录数据解析路径,从respObj.result改为loginData
- 在账户绑定成功后更新账户信息,添加渠道标识
- 优化链接账户回调处理,支持登录数据的完整传递
- 修复代码格式和字符串拼接问题
This commit is contained in:
2025-12-31 17:15:25 +08:00
parent 053bdf70a2
commit b0cce65e54
2 changed files with 49 additions and 15 deletions

View File

@@ -128,10 +128,10 @@ namespace tysdk
/*================================================
_ _
/ \ ___ ___ ___ _ _ _ __ | |_
_ _
/ \ ___ ___ ___ _ _ _ __ | |_
/ _ \ / __/ __/ _ \| | | | '_ \| __|
/ ___ \ (_| (_| (_) | |_| | | | | |_
/ ___ \ (_| (_| (_) | |_| | | | | |_
/_/ \_\___\___\___/ \__,_|_| |_|\__|
=================================================*/
@@ -259,7 +259,7 @@ namespace tysdk
if (code == 0)
{
var loginData = data["respObj"]["result"];
var loginData = data["loginData"];
var userId = (int)loginData["userId"];
var token = (string)loginData["token"];
@@ -326,6 +326,7 @@ namespace tysdk
if (_accountInfo != null)
{
_accountInfo.channel = accoutType;
_accountInfo.AddLinkedAccount(accoutType);
_accountInfo.Save();
}
@@ -353,6 +354,27 @@ namespace tysdk
result.bindInfo = JsonConvert.DeserializeObject<Dictionary<string, string>>(data.GetValue(@"bindInfo").ToString());
}
if (result.code == 0 && data.ContainsKey("loginData"))
{
var loginData = data["loginData"];
var userId = (int)loginData["userId"];
var token = (string)loginData["token"];
var jwtToken = (string)loginData["jwttoken"];
var savedInfo = AccountInfo.GetSavedAccoutInfo();
if (savedInfo == null || savedInfo.userId != userId)
{
_accountInfo = new AccountInfo()
{
userId = (int)loginData["userId"],
userName = (string)loginData["userName"],
avatar = (string)loginData["purl"],
token = (string)loginData["token"],
jwtToken = (string)loginData["jwttoken"],
};
}
}
TYSDKCallbackManager.Instance.TryTriggerCallback(result);
}
#endif
@@ -392,8 +414,8 @@ namespace tysdk
}
catch(Exception e)
{
Debug.LogWarning($"[TYSdkFacade] CheckLinkResult error: {e}");
return false;
Debug.LogWarning($"[TYSdkFacade] CheckLinkResult error: {e}");
return false;
}
}
@@ -459,7 +481,7 @@ namespace tysdk
string listStr = string.Join("&", list.ToArray());
string sign = listStr +
"csh-api-6dfa879490a249be9fbc92e97e4d898d-api-csh";
"csh-api-6dfa879490a249be9fbc92e97e4d898d-api-csh";
//对sign进行MD5加密
string signMd5 = CalculateMD5Hash(sign);
string url = $"{tycs}?{listStr}&sign={signMd5}&isAbroad=1&lan=en";
@@ -490,4 +512,4 @@ namespace tysdk
return sBuilder.ToString();
}
}
}
}