[M] new call back
[wip]
This commit is contained in:
@@ -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"});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user