diff --git a/Runtime/GuruConsent/Runtime/Script/Consent/GuruConsent.cs b/Runtime/GuruConsent/Runtime/Script/Consent/GuruConsent.cs index 1d2a0bc..8393874 100644 --- a/Runtime/GuruConsent/Runtime/Script/Consent/GuruConsent.cs +++ b/Runtime/GuruConsent/Runtime/Script/Consent/GuruConsent.cs @@ -77,22 +77,20 @@ namespace Guru //------- message send to unity ---------- Debug.Log($"{Tag} get callback msg:\n{msg}"); - var ditc = JsonConvert.DeserializeObject>(msg); + var result = JsonConvert.DeserializeObject(msg); - if (ditc != null && ditc.ContainsKey("action") && ditc["action"] == "gdpr") + if (result != null && result.action == "gdpr") { - var json = ditc["data"]; - var status = JsonConvert.DeserializeObject(json); - if (status != null) + if (result.data != null) { - Debug.Log($"{Tag} --- status: {status.status} msg: {status.msg}"); - onCompleteHandler?.Invoke(status.status); + Debug.Log($"{Tag} --- status: {result.data.status} msg: {result.data.msg}"); + onCompleteHandler?.Invoke(result.data.status); + return; } } - else - { - Debug.Log($"{Tag} Parse callback Error"); - } + + Debug.LogError($"{Tag} Parse callback Error"); + onCompleteHandler?.Invoke(StatusCode.UNKNOWN); } /// @@ -107,7 +105,16 @@ namespace Guru #endregion #region 常量定义 - + + /// + /// GDPR 状态对象 + /// + [Serializable] + internal class ConsentResult + { + public string action = ""; + public ConsentStatus data = null; + } /// /// GDPR 状态对象 @@ -118,8 +125,7 @@ namespace Guru public int status; public string msg; } - - + /// /// Consent 状态 ///