[M] new call back
[wip]
This commit is contained in:
@@ -56,37 +56,45 @@ namespace tysdk
|
||||
#elif UNITY_ANDROID
|
||||
|
||||
var pType = "googleiab.global.app";
|
||||
|
||||
var taskSource = new TaskCompletionSource<PaymentInfo>();
|
||||
callbacks.Add("PayResult", (ITYSdkCallback callback) =>
|
||||
|
||||
var task = TYSDKCallbackManager.Instance.RegisterCallback<PaymentInfo>(TimeSpan.FromMinutes(1));
|
||||
|
||||
try
|
||||
{
|
||||
taskSource.SetResult((PaymentInfo)callback);
|
||||
});
|
||||
//UnityBridgeFunc.UnityKnow(prodId, prodName, count.ToString(), orderId, extraInfo);
|
||||
UnityBridgeFunc.UnityKnowNew(prodId, prodPrice, prodName, count.ToString(), orderId, extraInfo,pType);
|
||||
|
||||
//UnityBridgeFunc.UnityKnow(prodId, prodName, count.ToString(), orderId, extraInfo);
|
||||
UnityBridgeFunc.UnityKnowNew(prodId, prodPrice, prodName, count.ToString(), orderId, extraInfo,pType);
|
||||
var result = await task;
|
||||
result.count = count;
|
||||
result.orderId = orderId;
|
||||
result.productId = prodId;
|
||||
result.price = prodPrice;
|
||||
return result;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Debug.LogWarning($"[TYSdkFacade::Pay] Faild {e.Message}");
|
||||
return new PaymentInfo(){code = "-1"};
|
||||
}
|
||||
|
||||
var result = await taskSource.Task;
|
||||
result.count = count;
|
||||
result.orderId = orderId;
|
||||
result.productId = prodId;
|
||||
result.price = prodPrice;
|
||||
return result;
|
||||
|
||||
#elif UNITY_IOS
|
||||
var taskSource = new TaskCompletionSource<PaymentInfo>();
|
||||
callbacks.Add("PayResult", (ITYSdkCallback callback) =>
|
||||
{
|
||||
taskSource.SetResult((PaymentInfo)callback);
|
||||
});
|
||||
var task = TYSDKCallbackManager.Instance.RegisterCallback<PaymentInfo>(TimeSpan.FromMinutes(1));
|
||||
UnityBridgeFunc.UnityKnow(_accountInfo.strUserId, prodId, prodPrice, prodName, count.ToString(), orderId, extraInfo);
|
||||
|
||||
var result = await taskSource.Task;
|
||||
result.count = count;
|
||||
result.orderId = orderId;
|
||||
result.productId = prodId;
|
||||
result.price = prodPrice;
|
||||
return result;
|
||||
try{
|
||||
var result = await task;
|
||||
result.count = count;
|
||||
result.orderId = orderId;
|
||||
result.productId = prodId;
|
||||
result.price = prodPrice;
|
||||
return result;
|
||||
}
|
||||
catch(Exception e)
|
||||
{
|
||||
Debug.LogWarning($"[TYSdkFacade::Pay] Faild {e.Message}");
|
||||
return new PaymentInfo(){code = "-1"};
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -98,12 +106,7 @@ namespace tysdk
|
||||
var result = new PaymentInfo();
|
||||
result.code = jresult["code"].ToString();
|
||||
result.msg = jresult["errStr"].ToString();
|
||||
|
||||
if (callbacks.TryGetValue("PayResult", out var action))
|
||||
{
|
||||
action.Invoke(result);
|
||||
callbacks.Remove("PayResult");
|
||||
}
|
||||
TYSDKCallbackManager.Instance.TryTriggerCallback(result);
|
||||
}
|
||||
|
||||
// Get Pay list
|
||||
@@ -117,13 +120,9 @@ namespace tysdk
|
||||
var result = new ProductListInfo();
|
||||
return result;
|
||||
#elif UNITY_ANDROID || UNITY_IOS
|
||||
var taskSource = new TaskCompletionSource<ProductListInfo>();
|
||||
callbacks.Add("SKUListResult", (ITYSdkCallback callback) =>
|
||||
{
|
||||
taskSource.SetResult((ProductListInfo) callback);
|
||||
});
|
||||
var task = TYSDKCallbackManager.Instance.RegisterCallback<ProductListInfo>();
|
||||
UnityBridgeFunc.GetSKUList();
|
||||
var result = await taskSource.Task;
|
||||
var result = await task;
|
||||
return result;
|
||||
#endif
|
||||
}
|
||||
@@ -147,11 +146,7 @@ namespace tysdk
|
||||
#endif
|
||||
}
|
||||
|
||||
if (callbacks.TryGetValue("SKUListResult", out var action))
|
||||
{
|
||||
action.Invoke(result);
|
||||
callbacks.Remove("SKUListResult");
|
||||
}
|
||||
TYSDKCallbackManager.Instance.TryTriggerCallback(result);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user