diff --git a/Runtime/GuruAnalytics/Runtime/Script/GuruAnalytics.cs b/Runtime/GuruAnalytics/Runtime/Script/GuruAnalytics.cs index 8ed52b3..657955c 100644 --- a/Runtime/GuruAnalytics/Runtime/Script/GuruAnalytics.cs +++ b/Runtime/GuruAnalytics/Runtime/Script/GuruAnalytics.cs @@ -329,40 +329,39 @@ namespace Guru Debug.Log($"{Tag} get callback errorInfo:\n{msg}"); try { - var data = JsonConvert.DeserializeObject(msg); - if (data.TryGetValue("action", out var jKey)) + var response = JsonConvert.DeserializeObject(msg); + if (response.TryGetValue("action", out var jAct)) { - if (jKey.ToString() == ActionName) + if (jAct.ToString() == ActionName + && response.TryGetValue("data", out var jData) && jData is JObject data) { + int code = -1; + string message = msg; + if (data.TryGetValue("code", out var jCode)) { - int code = -1; - string message = msg; int.TryParse(jCode.ToString(), out code); - - var errorCode = (AnalyticsCode)code; - - switch (errorCode) - { - case AnalyticsCode.Network_Lost: - case AnalyticsCode.ERROR_API: - case AnalyticsCode.ERROR_DNS: - case AnalyticsCode.ERROR_ZIP: - case AnalyticsCode.ERROR_LOAD_MARK: - case AnalyticsCode.ERROR_RESPONSE: - case AnalyticsCode.ERROR_CACHE_CONTROL: - case AnalyticsCode.ERROR_DELETE_EXPIRED: - - if (data.TryGetValue("msg", out var jMsg)) - { - message = jMsg.ToString(); - } - - OnLoggerErrorEvent(code, message); - break; - } - return; } + if (data.TryGetValue("msg", out var jMsg)) + { + message = jMsg.ToString(); + } + + var errorCode = (AnalyticsCode)code; + switch (errorCode) + { + case AnalyticsCode.Network_Lost: + case AnalyticsCode.ERROR_API: + case AnalyticsCode.ERROR_DNS: + case AnalyticsCode.ERROR_ZIP: + case AnalyticsCode.ERROR_LOAD_MARK: + case AnalyticsCode.ERROR_RESPONSE: + case AnalyticsCode.ERROR_CACHE_CONTROL: + case AnalyticsCode.ERROR_DELETE_EXPIRED: + OnLoggerErrorEvent(code, message); + break; + } + return; } } Debug.LogError($"{Tag} Parse callback Error"); @@ -403,9 +402,6 @@ namespace Guru #endregion } - - - /// /// 网络状态枚举