[M] new call back

[wip]
This commit is contained in:
2025-12-03 11:11:56 +08:00
parent 9d6b5ae895
commit 8cc0a67f03
16 changed files with 4028 additions and 308 deletions

View File

@@ -1,3 +1,4 @@
using System;
using System.Threading.Tasks;
using UnityEngine;
@@ -27,23 +28,22 @@ namespace tysdk
return new ATTInfo(){isAccepted = true};
#elif UNITY_IOS
var taskSource = new TaskCompletionSource<ATTInfo>();
callbacks.Add("RequestATT", (ITYSdkCallback callback) =>
{
taskSource.SetResult((ATTInfo)callback);
});
var task = tysdk.TYSDKCallbackManager.Instance.RegisterCallback<ATTInfo>();
UnityBridgeFunc.RequestATT();
return await taskSource.Task;
try{
return await task;
}
catch(Exception e)
{
Debug.LogWarning(e.Message);
return new ATTInfo(){isAccepted = false};
}
#endif
}
public void RequestATTResult(string r)
{
if (callbacks.TryGetValue("RequestATT", out var action))
{
action.Invoke(new ATTInfo(){isAccepted = r == "1"});
callbacks.Remove("RequestATT");
}
TYSDKCallbackManager.Instance.TryTriggerCallback(new ATTInfo(){isAccepted = r == "1"});
}
}
}
}