[M] fix SNS login and JSON syntax errors
- Fix extra closing brace in JSON error callbacks (SDKManager.java) - Enable SNS type return from UnityLoginBySnsInfo for proper account channel tracking - Update LoginBySns to use returned SNS type for linked account management - Re-enable editor mode login for testing 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -89,7 +89,7 @@ public class SDKManager {
|
|||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
Log.e(TAG,"SDKManager-parseLoginInfo-Exception" + e);
|
Log.e(TAG,"SDKManager-parseLoginInfo-Exception" + e);
|
||||||
SDKLog.e("SDKManager-parseLoginInfo-Exception" + e);
|
SDKLog.e("SDKManager-parseLoginInfo-Exception" + e);
|
||||||
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.LOGIN_CALLBACK_FUNCTION_NAME, "{\"code\":1}}");
|
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.LOGIN_CALLBACK_FUNCTION_NAME, "{\"code\":1}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -117,7 +117,7 @@ public class SDKManager {
|
|||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
Log.e(TAG,"SDKManager-SDKCallBack.Pay-Exception" + e);
|
Log.e(TAG,"SDKManager-SDKCallBack.Pay-Exception" + e);
|
||||||
SDKLog.e("SDKManager-SDKCallBack.Pay-Exception" + e);
|
SDKLog.e("SDKManager-SDKCallBack.Pay-Exception" + e);
|
||||||
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.PAY_CALLBACK_FUNCTION_NAME, "{\"code\":1}}");
|
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.PAY_CALLBACK_FUNCTION_NAME, "{\"code\":1}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -132,16 +132,18 @@ public class SDKManager {
|
|||||||
handler.post(() -> SDKAPI.getIns().loginByToken(token, mLogin));
|
handler.post(() -> SDKAPI.getIns().loginByToken(token, mLogin));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void UnityLoginBySnsInfo()
|
public static String UnityLoginBySnsInfo()
|
||||||
{
|
{
|
||||||
if(tmpSnsInfo == null)
|
if(tmpSnsInfo == null)
|
||||||
{
|
{
|
||||||
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.LOGIN_CALLBACK_FUNCTION_NAME, "{\"code\":1}}");
|
handler.post(() -> UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.LOGIN_CALLBACK_FUNCTION_NAME, "{\"code\":1}"));
|
||||||
return;
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
SDKLog.i("UnityLoginBySns : " + tmpSnsInfo);
|
SDKLog.i("UnityLoginBySns : " + tmpSnsInfo);
|
||||||
handler.post(() -> SDKAPI.getIns().loginBySnsInfo(tmpSnsInfo, mLogin));
|
handler.post(() -> SDKAPI.getIns().loginBySnsInfo(tmpSnsInfo, mLogin));
|
||||||
|
return tmpSnsInfo.type;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void UnityGetIdentityFun(String type) {
|
public static void UnityGetIdentityFun(String type) {
|
||||||
@@ -309,7 +311,7 @@ public class SDKManager {
|
|||||||
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.PAY_TYPE_CALLBACK_FUNCTION_NAME, result.toString());
|
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.PAY_TYPE_CALLBACK_FUNCTION_NAME, result.toString());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
SDKLog.e("SDKManager-UnityGetKnowTypeList-Exception" + e);
|
SDKLog.e("SDKManager-UnityGetKnowTypeList-Exception" + e);
|
||||||
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.PAY_TYPE_CALLBACK_FUNCTION_NAME, "{\"code\":1}}");
|
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.PAY_TYPE_CALLBACK_FUNCTION_NAME, "{\"code\":1}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -362,7 +364,7 @@ public class SDKManager {
|
|||||||
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.PAY_TYPE_CALLBACK_FUNCTION_NAME, result.toString());
|
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.PAY_TYPE_CALLBACK_FUNCTION_NAME, result.toString());
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
SDKLog.e("SDKManager-UnityGetKnowTypeList-Exception" + e);
|
SDKLog.e("SDKManager-UnityGetKnowTypeList-Exception" + e);
|
||||||
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.PAY_TYPE_CALLBACK_FUNCTION_NAME, "{\"code\":1}}");
|
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.PAY_TYPE_CALLBACK_FUNCTION_NAME, "{\"code\":1}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -153,26 +153,24 @@ namespace tysdk
|
|||||||
|
|
||||||
public async Task<LoginInfo> Login(EAccoutType accoutType)
|
public async Task<LoginInfo> Login(EAccoutType accoutType)
|
||||||
{
|
{
|
||||||
// #if UNITY_EDITOR
|
#if UNITY_EDITOR
|
||||||
// await Task.Yield();
|
await Task.Yield();
|
||||||
// var deviceId = UnityEngine.Device.SystemInfo.deviceUniqueIdentifier.Split('-')[0].Substring(0, 8);
|
var deviceId = UnityEngine.Device.SystemInfo.deviceUniqueIdentifier.Split('-')[0].Substring(0, 8);
|
||||||
//
|
|
||||||
// var userId = (int)ulong.Parse(deviceId, System.Globalization.NumberStyles.HexNumber);
|
|
||||||
//
|
|
||||||
// _accountInfo = new AccountInfo()
|
|
||||||
// {
|
|
||||||
// userId = userId,
|
|
||||||
// };
|
|
||||||
//
|
|
||||||
// return new LoginInfo()
|
|
||||||
// {
|
|
||||||
// isSuccess = true,
|
|
||||||
// userId = userId
|
|
||||||
// };
|
|
||||||
//
|
|
||||||
// #elif UNITY_ANDROID || UNITY_IOS
|
|
||||||
|
|
||||||
|
var userId = (int)ulong.Parse(deviceId, System.Globalization.NumberStyles.HexNumber);
|
||||||
|
|
||||||
|
_accountInfo = new AccountInfo()
|
||||||
|
{
|
||||||
|
userId = userId,
|
||||||
|
};
|
||||||
|
|
||||||
|
return new LoginInfo()
|
||||||
|
{
|
||||||
|
isSuccess = true,
|
||||||
|
userId = userId
|
||||||
|
};
|
||||||
|
|
||||||
|
#elif UNITY_ANDROID || UNITY_IOS
|
||||||
var task = TYSDKCallbackManager.Instance.RegisterCallback<LoginInfo>(TimeSpan.FromSeconds(30));
|
var task = TYSDKCallbackManager.Instance.RegisterCallback<LoginInfo>(TimeSpan.FromSeconds(30));
|
||||||
|
|
||||||
UnityBridgeFunc.UnityLogin(accoutType);
|
UnityBridgeFunc.UnityLogin(accoutType);
|
||||||
@@ -193,7 +191,7 @@ namespace tysdk
|
|||||||
Debug.LogWarning($"[TYSdkFacade] Login failed: {e}");
|
Debug.LogWarning($"[TYSdkFacade] Login failed: {e}");
|
||||||
return new LoginInfo(){isSuccess = false};
|
return new LoginInfo(){isSuccess = false};
|
||||||
}
|
}
|
||||||
// #endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<LoginInfo> LoginByToken()
|
public async Task<LoginInfo> LoginByToken()
|
||||||
@@ -223,18 +221,23 @@ namespace tysdk
|
|||||||
|
|
||||||
public async Task<LoginInfo> LoginBySns()
|
public async Task<LoginInfo> LoginBySns()
|
||||||
{
|
{
|
||||||
var accoutInfo = AccountInfo.GetSavedAccoutInfo();
|
var accountInfo = AccountInfo.GetSavedAccoutInfo();
|
||||||
if (accoutInfo == null) return new LoginInfo();
|
if (accountInfo == null) return new LoginInfo();
|
||||||
|
|
||||||
var task = TYSDKCallbackManager.Instance.RegisterCallback<LoginInfo>(TimeSpan.FromSeconds(30));
|
var task = TYSDKCallbackManager.Instance.RegisterCallback<LoginInfo>(TimeSpan.FromSeconds(30));
|
||||||
|
|
||||||
UnityBridgeFunc.UnityLoginByTokenFun(accoutInfo.token);
|
var snsType = UnityBridgeFunc.UnityLoginBySnsInfoFun();
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var loginInfo = await task;
|
var loginInfo = await task;
|
||||||
if (loginInfo.isSuccess)
|
if (loginInfo.isSuccess)
|
||||||
{
|
{
|
||||||
|
if (Enum.TryParse<EAccoutType>(snsType, out var accountType))
|
||||||
|
{
|
||||||
|
_accountInfo.channel = accountType;
|
||||||
|
}
|
||||||
|
_accountInfo.AddLinkedAccount(accountType);
|
||||||
_accountInfo.Save();
|
_accountInfo.Save();
|
||||||
}
|
}
|
||||||
return loginInfo;
|
return loginInfo;
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ namespace tysdk
|
|||||||
//登录
|
//登录
|
||||||
public static void UnityLoginByTokenFun(string token){}
|
public static void UnityLoginByTokenFun(string token){}
|
||||||
|
|
||||||
public static void UnityLoginBySnsInfoFun() { }
|
public static string UnityLoginBySnsInfoFun() => null;
|
||||||
|
|
||||||
public static void UnityLogin(EAccoutType accoutType){}
|
public static void UnityLogin(EAccoutType accoutType){}
|
||||||
public static void LinkAccount(EAccoutType accoutType){}
|
public static void LinkAccount(EAccoutType accoutType){}
|
||||||
@@ -59,6 +59,7 @@ namespace tysdk
|
|||||||
public static void MessengerShareLink(string title, string content, string url) { }
|
public static void MessengerShareLink(string title, string content, string url) { }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#elif UNITY_ANDROID
|
#elif UNITY_ANDROID
|
||||||
|
|
||||||
private static string SDK_CLASS = "com.unity3d.player.SDKManager";
|
private static string SDK_CLASS = "com.unity3d.player.SDKManager";
|
||||||
@@ -92,11 +93,11 @@ namespace tysdk
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void UnityLoginBySnsInfoFun()
|
public static String UnityLoginBySnsInfoFun()
|
||||||
{
|
{
|
||||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||||
{
|
{
|
||||||
sdkManager.CallStatic("UnityLoginBySnsInfo");
|
return sdkManager.CallStatic<string>("UnityLoginBySnsInfo");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user