Unity In-App Purchase本地验证很慢

时间:2016-11-07 04:01:31

标签: ios unity3d in-app-purchase

我目前正在将游戏的应用内购买模式从较旧的插件更改为Unity的内置服务。到目前为止,测试付款和验证收据(包括实时和使用沙盒帐户)都没有问题。

按照Unity指南,我开发了一个商店,并且可以使用沙盒帐户成功进行新的付款,但是在iPad Air 2上进行本地验证大约需要2分钟。这是正常的吗?我们以前的加载项使用App Store验证了收据数据,只花了几秒钟。

private bool CheckReceipt()
    {
#if UNITY_EDITOR
        Debug.Log("IAP: Default for editor, receipt valid.");
        return true;
#elif UNITY_ANDROID || UNITY_IOS
        try
        {
            CrossPlatformValidator validator = new CrossPlatformValidator(GooglePlayTangle.Data(),
            AppleTangle.Data(), Application.bundleIdentifier);
            Product product = controller.products.WithID(ProductID);
            string receipt = product.receipt;
            if (receipt == null)
            {
                Debug.Log("IAP: No receipt.");
                return false;
            }
            Debug.Log("IAP: Validating receipt...");    
            IPurchaseReceipt[] result = validator.Validate(receipt);
            return result[0].productID == ProductID;
        }
        catch (IAPSecurityException e)
        {
            Debug.Log("IAP: Invalid receipt, not unlocking content");
            return false;
        }
#endif
    }

1 个答案:

答案 0 :(得分:0)

在“Sandbox”模式下这次验证非常真实,当你改变支付到“战斗”模式时,一切正常