modify scripts
This commit is contained in:
57
Assets/WordConnectGameToolkit/Scripts/Services/IAP/IAPErr.cs
Normal file
57
Assets/WordConnectGameToolkit/Scripts/Services/IAP/IAPErr.cs
Normal file
@ -0,0 +1,57 @@
|
||||
using System;
|
||||
|
||||
namespace WordsToolkit.Scripts.Services.IAP
|
||||
{
|
||||
/// <summary>
|
||||
/// IAP 典型错误类型枚举
|
||||
/// </summary>
|
||||
public enum IAPErrorType
|
||||
{
|
||||
None,
|
||||
UserCancelled,
|
||||
PaymentDeclined,
|
||||
InsufficientFunds,
|
||||
ProductUnavailable,
|
||||
DuplicateTransaction,
|
||||
NetworkError,
|
||||
NetworkUnavailable,
|
||||
IAPInitFailed,
|
||||
InvalidProductID,
|
||||
Unknown
|
||||
}
|
||||
|
||||
public static class IAPErrorHelper
|
||||
{
|
||||
/// <summary>
|
||||
/// 根据错误信息字符串,提取并映射到 IAPErrorType 枚举
|
||||
/// </summary>
|
||||
public static IAPErrorType ParseError(string errorMessage)
|
||||
{
|
||||
if (string.IsNullOrEmpty(errorMessage))
|
||||
return IAPErrorType.Unknown;
|
||||
|
||||
errorMessage = errorMessage.ToLowerInvariant();
|
||||
|
||||
if (errorMessage.Contains("usercancelled") || errorMessage.Contains("user cancelled"))
|
||||
return IAPErrorType.UserCancelled;
|
||||
if (errorMessage.Contains("paymentdeclined") || errorMessage.Contains("payment declined"))
|
||||
return IAPErrorType.PaymentDeclined;
|
||||
if (errorMessage.Contains("insufficientfunds") || errorMessage.Contains("insufficient funds"))
|
||||
return IAPErrorType.InsufficientFunds;
|
||||
if (errorMessage.Contains("productunavailable") || errorMessage.Contains("product unavailable"))
|
||||
return IAPErrorType.ProductUnavailable;
|
||||
if (errorMessage.Contains("duplicatetransaction") || errorMessage.Contains("duplicate transaction"))
|
||||
return IAPErrorType.DuplicateTransaction;
|
||||
if (errorMessage.Contains("networkerror") || errorMessage.Contains("network error"))
|
||||
return IAPErrorType.NetworkError;
|
||||
if (errorMessage.Contains("networkunavailable") || errorMessage.Contains("network unavailable"))
|
||||
return IAPErrorType.NetworkUnavailable;
|
||||
if (errorMessage.Contains("InvalidProductID".ToLowerInvariant()) )
|
||||
return IAPErrorType.InvalidProductID;
|
||||
if (errorMessage.Contains("IAPInitFailed".ToLowerInvariant()))
|
||||
return IAPErrorType.IAPInitFailed;
|
||||
|
||||
return IAPErrorType.Unknown;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user