update: 更新 IAP 接口, 添加 Category 参数

deeplink
胡宇飞 2024-03-18 09:13:49 +08:00
parent d2232e303b
commit 7f805c56de
1 changed files with 20 additions and 7 deletions

View File

@ -126,33 +126,46 @@ namespace Guru
#region Purchase
private static Action<string, bool> _onPurchaseCallback;
/// <summary>
/// 老接口, 将会被废弃
/// </summary>
/// <param name="productName"></param>
/// <param name="purchaseCallback"></param>
[Obsolete("Will be discarded in next version. Using Purchase(string productName, string category, Action<string, bool> purchaseCallback) instead.")]
public static void Purchase(string productName, Action<string, bool> purchaseCallback = null)
{
Purchase(productName, "", purchaseCallback);
}
/// <summary>
/// 购买商品, 通过商品Name
/// </summary>
/// <param name="productName"></param>
/// <param name="category"></param>
/// <param name="purchaseCallback"></param>
public static void Purchase(string productName, Action<string, bool> purchaseCallback = null)
public static void Purchase(string productName, string category = "", Action<string, bool> purchaseCallback = null)
{
if (CheckIAPReady())
{
_onPurchaseCallback = purchaseCallback;
GuruIAP.Instance.Buy(productName);
GuruIAP.Instance.Buy(productName, category);
}
}
/// <summary>
/// 购买商品, 通过商品ID
/// </summary>
/// <param name="productId"></param>
/// <param name="category"></param>
/// <param name="purchaseCallback"></param>
public static bool PurchaseById(string productId, Action<string, bool> purchaseCallback = null)
public static bool PurchaseById(string productId, string category = "", Action<string, bool> purchaseCallback = null)
{
var productName = GetProductInfoById(productId)?.Name ?? "";
if (CheckIAPReady() && !string.IsNullOrEmpty(productName))
{
Purchase(productName, purchaseCallback);
Purchase(productName, category, purchaseCallback);
return true;
}
return false;
@ -162,7 +175,7 @@ namespace Guru
/// <summary>
/// 支付回调
/// </summary>
/// <param name="productId"></param>
/// <param name="productName"></param>
/// <param name="success"></param>
private static void OnBuyEnd(string productName, bool success)
{