public void OnPurchaseFailed(Product i, PurchaseFailureReason p) { try { Debug.Log($"PurchaseFailed: {i} - {p}"); if (i != null && onConsumablePurcheseActions.ContainsKey(i.definition.id)) { var act = onConsumablePurcheseActions[i.definition.id]; act?.Invoke(false, null); onConsumablePurcheseActions.Remove(i.definition.id); } } catch { } }
public void OnPurchaseFailed(Product InProduct, PurchaseFailureReason InReason) { Debug.Log(string.Format("[IapPurchaser] OnPurchaseFailed: FAIL. Product: '{0}', PurchaseFailureReason: {1}", InProduct.definition.storeSpecificId, InReason)); UnityAction <int, Product> action; if (orderQueue.TryGetValue(InProduct.transactionID, out action)) { if (null != action) { action.Invoke((int)InReason, InProduct); } } }
/// <summary> /// OnPurchaseFailed. /// </summary> public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { #if DEBUG_MY_IAP || UNITY_EDITOR Debug.LogError(string.Format("[" + typeof(MyIAPManager).Name + "] OnPurchaseFailed(): storeSpecificId={0} | failureReason={1}", product.definition.storeSpecificId, failureReason.ToString())); #endif mPurchasingProductID = null; if (mOnPurchaseFailureCallback != null) { mOnPurchaseFailureCallback(product, failureReason); mOnPurchaseFailureCallback = null; } }
public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { // A product purchase attempt did not succeed. Check failureReason for more detail. Consider sharing // this reason with the user to guide their troubleshooting actions. if (Debug.isDebugBuild) { Debug.Log(string.Format("Purchase product FAILED: Product: '{0}', PurchaseFailureReason: {1}", product.definition.storeSpecificId, failureReason)); } // Fire purchase failure event IAPProduct pd = GetIAPProductById(product.definition.id); PurchaseFailed(pd); }
public override void Purchase(ProductDefinition product, string developerPayload) { m_Bindings.Purchase(product.storeSpecificId, (success, message) => { var dic = message.HashtableFromJson(); if (success) { var transactionId = dic.GetString("GameOrderId"); var storeSpecificId = dic.GetString("ProductId"); if (!string.IsNullOrEmpty(transactionId)) { dic["transactionId"] = transactionId; } if (!string.IsNullOrEmpty(storeSpecificId)) { dic["storeSpecificId"] = storeSpecificId; } if (!product.storeSpecificId.Equals(storeSpecificId)) { m_Logger.LogFormat(LogType.Error, "UDPImpl received mismatching product Id for purchase. Expected {0}, received {1}", product.storeSpecificId, storeSpecificId); } var data = dic.toJson(); unity.OnPurchaseSucceeded(product.storeSpecificId, data, transactionId); } else { PurchaseFailureReason reason = (PurchaseFailureReason)Enum.Parse(typeof(PurchaseFailureReason), k_Unknown); var reasonString = reason.ToString(); var errDic = new Dictionary <string, object> { ["error"] = reasonString }; if (dic.ContainsKey("purchaseInfo")) { errDic["purchaseInfo"] = dic["purchaseInfo"]; } var errData = errDic.toJson(); var pfd = new PurchaseFailureDescription(product.storeSpecificId, reason, message); unity.OnPurchaseFailed(pfd); } }, developerPayload); }
public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { PurchaseFailed?.Invoke(product.definition.id, failureReason); SceneActivationBehaviour <GameLogicActivator> .Instance.AnalyticsController.SendPurchaseEvent(AnalyticsScripts.QLPurchaseState.QLPurchaseStateFailed, product.definition.id, (float)product.metadata.localizedPrice, product.metadata.isoCurrencyCode, SceneActivationBehaviour <StoreUIActivator> .Instance.CoinsForProduct(product.definition.id), SceneActivationBehaviour <StoreUIActivator> .Instance.StoreOpenSource); // A product purchase attempt did not succeed. Check failureReason for more detail. Consider sharing // this reason with the user to guide their troubleshooting actions. Debug.Log(string.Format("[IAP] OnPurchaseFailed: FAIL. Product: '{0}', PurchaseFailureReason: {1}", product.definition.storeSpecificId, failureReason)); }
public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { // A product purchase attempt did not succeed. Check failureReason for more detail. Consider sharing // this reason with the user to guide their troubleshooting actions. if (product.definition.id == remove_ads) { Debug.Log("REMOVE ADS FAILED"); } else { Debug.Log("REMOVE ADS HASN'T FAILED"); } Debug.Log(string.Format("OnPurchaseFailed: FAIL. Product: '{0}', PurchaseFailureReason: {1}", product.definition.id, failureReason)); }
/// <summary> /// 内购失败 /// </summary> /// <param name="i"></param> /// <param name="p">失败原因</param> public void OnPurchaseFailed(Product i, PurchaseFailureReason p) { string failed = "内购失败"; AllSDKManager.SDKDebug(Name + "内购失败"); switch (p) { case PurchaseFailureReason.PurchasingUnavailable: AllSDKManager.GetSDK <AllAnalyticsSdk>().Event_IAP_End("系统购买功能不可用"); break; case PurchaseFailureReason.ExistingPurchasePending: AllSDKManager.GetSDK <AllAnalyticsSdk>().Event_IAP_End("在请求新购买时,购买已在进行中"); break; case PurchaseFailureReason.ProductUnavailable: AllSDKManager.GetSDK <AllAnalyticsSdk>().Event_IAP_End("该商品无法在商店购买"); break; case PurchaseFailureReason.SignatureInvalid: AllSDKManager.GetSDK <AllAnalyticsSdk>().Event_IAP_End("购买收据的签名验证失败"); break; case PurchaseFailureReason.UserCancelled: AllSDKManager.GetSDK <AllAnalyticsSdk>().Event_IAP_End("用户选择取消而不是继续购买"); break; case PurchaseFailureReason.PaymentDeclined: AllSDKManager.GetSDK <AllAnalyticsSdk>().Event_IAP_End("付款有问题"); break; case PurchaseFailureReason.DuplicateTransaction: AllSDKManager.GetSDK <AdSdk>().IsEnable = false; AllSDKManager.GetSDK <AllAnalyticsSdk>().Event_IAP_End("事务已成功完成时出现重复的事务错误"); break; case PurchaseFailureReason.Unknown: AllSDKManager.GetSDK <AllAnalyticsSdk>().Event_IAP_End("未知失败"); break; default: break; } if (buyItemCompleteEvent != null) { buyItemCompleteEvent(failed); } AllSDKManager.GetSDK <AllAnalyticsSdk>().Event_IAP_End(failed); }
public void OnPurchaseFailed(Product item, PurchaseFailureReason r) { string errorMsg = ""; Message msg = new Message(); switch (r) { case PurchaseFailureReason.PurchasingUnavailable: errorMsg = msg.getMessage(107); audioSources[4].Play(); break; case PurchaseFailureReason.ExistingPurchasePending: errorMsg = msg.getMessage(108); audioSources[4].Play(); break; case PurchaseFailureReason.PaymentDeclined: errorMsg = msg.getMessage(109); audioSources[4].Play(); break; case PurchaseFailureReason.ProductUnavailable: errorMsg = msg.getMessage(110); audioSources[4].Play(); break; case PurchaseFailureReason.SignatureInvalid: errorMsg = msg.getMessage(111); audioSources[4].Play(); break; case PurchaseFailureReason.UserCancelled: errorMsg = msg.getMessage(112); audioSources[4].Play(); break; case PurchaseFailureReason.Unknown: errorMsg = msg.getMessage(113); audioSources[4].Play(); break; } m_PurchaseInProgress = false; //reset //Msg msg.makeMessageOnGameObject(errorMsg, canvasObj); }
public void Purchase_Failed(Product _product, PurchaseFailureReason _failureReason) { switch (_failureReason) { case PurchaseFailureReason.PurchasingUnavailable: textFailureReason = "Compra no disponible"; break; case PurchaseFailureReason.ExistingPurchasePending: textFailureReason = "Existencia de compra pendiente"; break; case PurchaseFailureReason.ProductUnavailable: textFailureReason = "Producto no disponible"; break; case PurchaseFailureReason.SignatureInvalid: textFailureReason = "Firma invalida"; break; case PurchaseFailureReason.UserCancelled: textFailureReason = "Usuario cancelado"; break; case PurchaseFailureReason.PaymentDeclined: textFailureReason = "Pago rechazado"; break; case PurchaseFailureReason.DuplicateTransaction: textFailureReason = "Transaccion duplicada"; break; case PurchaseFailureReason.Unknown: textFailureReason = "Desconocido"; break; } //Si el producto ya esta cargado, nos muestra el error; sino muestra el texto "Inicializando" if (_product != null) { print("ERROR: " + textFailureReason + " / Producto: " + _product.definition.id); txtMessage.text = "ERROR: " + textFailureReason + " / Producto: " + _product.definition.id; } else { print("Cargando el producto.."); txtMessage.text = "Cargando el producto.."; } }
private void OnPurchaseFailed(Product t, PurchaseFailureReason t1) { Debug.Log("OnPurchaseFailed ! t:" + t + " PurchaseFailureReason:" + t1); OnPayInfo payInfo = new OnPayInfo(); payInfo.isSuccess = false; if (t != null) { Debug.Log("OnPurchaseFailed ! t.definition:" + t.definition); payInfo.goodsId = t.definition.id; payInfo.goodsType = ProductType2GoodsType(t.definition.type); } PayCallBack(payInfo); }
public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { // A product purchase attempt did not succeed. Check failureReason for more detail. Consider sharing // this reason with the user to guide their troubleshooting actions. Debug.Log( $"OnPurchaseFailed: FAIL. Product: '{product.definition.storeSpecificId}', PurchaseFailureReason: {failureReason}"); // When purchase fail due to duplicate transaction, and the item is not shown in client side, // do restore purchase to fetch the product. // This situation may happen when the user lose internet connection after paying to play store. if (failureReason == PurchaseFailureReason.DuplicateTransaction) { _playStoreExtensions.RestoreTransactions(null); } }
public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { Debug.Log(string.Format("OnPurchaseFailed: FAIL. Product: '{0}', PurchaseFailureReason: {1}", product.definition.storeSpecificId, failureReason)); if (failureReason.ToString().Contains("DuplicateTransaction")) { MainScript.self.bannerView.Destroy(); MainScript.self.ads.SetActive(false); MainScript.self.ads_restore.SetActive(false); PlayerPrefs.SetInt("noads", 1); PlayerPrefs.Save(); Debug.Log("NO ADS"); } }
/// <summary> /// A purchase failed with specified reason. /// </summary> /// <param name="item">The product that was attempted to be purchased. </param> /// <param name="r">The failure reason.</param> public void OnPurchaseFailed(Product item, PurchaseFailureReason r) { Debug.Log("Purchase failed: " + item.definition.id); Debug.Log(r); // Detailed debugging information Debug.Log("Store specific error code: " + m_TransactionHistoryExtensions.GetLastStoreSpecificPurchaseErrorCode()); if (m_TransactionHistoryExtensions.GetLastPurchaseFailureDescription() != null) { Debug.Log("Purchase failure description message: " + m_TransactionHistoryExtensions.GetLastPurchaseFailureDescription().message); } m_PurchaseInProgress = false; }
public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { ShopThingDataReal prod = GetProductById(product.definition.id); if (prod != null) { if (PEvent) { PEvent.FailedPurchaseMessage(prod.kProductID, prod.name); } } // A product purchase attempt did not succeed. Check failureReason for more detail. Consider sharing this reason with the user. Debug.Log(string.Format("OnPurchaseFailed: FAIL. Product: '{0}', PurchaseFailureReason: {1}", product.definition.storeSpecificId, failureReason)); }
public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { GStateManager.Instance.EnableLoadingSpinner(false); IsPurchasing = false; // A product purchase attempt did not succeed. Check failureReason for more detail. Consider sharing // this reason with the user to guide their troubleshooting actions. if (m_enableDebug) { GDebug.LogError(string.Format("OnPurchaseFailed: FAIL. Product: '{0}', PurchaseFailureReason: {1}", product.definition.storeSpecificId, failureReason)); } if (m_failureCallback != null) { m_failureCallback.Invoke(-1, -1, "{'reason':'" + failureReason.ToString() + "' }", product); } }
public void OnPurchaseFailed(Product i, PurchaseFailureReason p) { //UserCancelled means the user tapped outside of the payment dialog, closing it //Unknown happens when the user hits the Home button while the purchase dialog is open //Existing Purchase Pending can happen when the user attempts a purchase offline, then gets an internet connection and tries again if (p != PurchaseFailureReason.UserCancelled && p != PurchaseFailureReason.Unknown) //UserCancelled and Unknown are success cases { _logToDebugOutput("Purchase Failed:"); _logToDebugOutput("Reason: " + p.ToString()); } //todo real game: save data key for this product id as FALSE if (OnPurchaseFailedEventHandler != null) { OnPurchaseFailedEventHandler(); } }
public void OnPurchaseFailed(Product item, PurchaseFailureReason reason) { Debug.Log("Billing::OnPurchaseFailed:" + item.metadata.localizedTitle); PurchaseIAPResultCode resultCode = PurchaseIAPResultCode.Failed; BillerErrors error = BillerErrors.NO_ERROR; InAppPurchasableItem inApp = CreatePurchasableInAppItem(item); switch (reason) { case PurchaseFailureReason.ExistingPurchasePending: error = BillerErrors.ATTEMPTING_TO_PURCHASE_PRODUCT_WITH_SAME_RECEIPT; break; case PurchaseFailureReason.PaymentDeclined: error = BillerErrors.PAYMENT_DECLINED; break; case PurchaseFailureReason.ProductUnavailable: error = BillerErrors.PRODUCT_UNAVAILABLE; break; case PurchaseFailureReason.PurchasingUnavailable: error = BillerErrors.PURCHASING_UNAVAILABLE; break; case PurchaseFailureReason.SignatureInvalid: error = BillerErrors.REMOTE_VALIDATION_FAILED; break; case PurchaseFailureReason.Unknown: error = BillerErrors.UNKNOWN; break; case PurchaseFailureReason.UserCancelled: resultCode = PurchaseIAPResultCode.Cancelled; break; } _isPurchaseInProgress = false; PurchaseIAPResult result = new PurchaseIAPResult(inApp, resultCode, error); PsdkEventSystem.Instance.NotifyOnBillingPurchased(result); reportPurchaseCampaignResult(false); }
/// <summary> /// Called when a purchase fails. /// </summary> public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { Debug.Log(string.Format("OnPurchaseFailed: FAIL. Product: '{0}', PurchaseFailureReason: {1}", product.definition.storeSpecificId, failureReason)); // A product purchase attempt did not succeed. Check failureReason for more detail. Consider sharing this reason with the user. switch (failureReason) { // for these cases we don't need to inform further case PurchaseFailureReason.UserCancelled: break; // for these we show an error default: DialogManager.Instance.ShowError(LocaliseText.Format("GeneralMessage.Error.GeneralError", failureReason)); break; } }
/// <summary> /// This will be called if an attempted purchase fails. /// </summary> public void OnPurchaseFailed(Product item, PurchaseFailureReason r) { Debug.Log("Purchase failed: " + item.definition.id); Debug.Log(r); if (m_IsUnityChannelSelected) { var extra = m_UnityChannelExtensions.GetLastPurchaseError(); var purchaseError = JsonUtility.FromJson <UnityChannelPurchaseError>(extra); if (purchaseError != null && purchaseError.purchaseInfo != null) { // Additional information about purchase failure. var purchaseInfo = purchaseError.purchaseInfo; Debug.LogFormat( "UnityChannel purchaseInfo: productCode = {0}, gameOrderId = {1}, orderQueryToken = {2}", purchaseInfo.productCode, purchaseInfo.gameOrderId, purchaseInfo.orderQueryToken); } // Determine if the user already owns this item and that it can be added to // their inventory, if not already present. #if UNITY_5_6_OR_NEWER if (r == PurchaseFailureReason.DuplicateTransaction) { // Unlock `item` in inventory if not already present. Debug.Log("Duplicate transaction detected, unlock this item"); } #else // Building using Unity strictly less than 5.6; e.g 5.3-5.5. // In Unity 5.3 the enum PurchaseFailureReason.DuplicateTransaction // may not be available (is available in 5.6 ... specifically // 5.5.1p1+, 5.4.4p2+) and can be substituted with this call. if (r == PurchaseFailureReason.Unknown) { if (purchaseError != null && purchaseError.error != null && purchaseError.error.Equals("DuplicateTransaction")) { // Unlock `item` in inventory if not already present. Debug.Log("Duplicate transaction detected, unlock this item"); } } #endif } m_PurchaseInProgress = false; }
private void FailedStorePurchase(PurchaseFailureReason _reason) { UpdateStoreButtons(); string reason = ""; switch (_reason) { case PurchaseFailureReason.PurchasingUnavailable: reason = "Purchasing is Currently Unavaliable"; break; case PurchaseFailureReason.ExistingPurchasePending: reason = "Existing Purchase is Pending"; break; case PurchaseFailureReason.ProductUnavailable: reason = "Product is Currently Unavaliable"; break; case PurchaseFailureReason.SignatureInvalid: reason = "Signature Invalid"; break; case PurchaseFailureReason.UserCancelled: reason = "User Cancelled"; break; case PurchaseFailureReason.PaymentDeclined: reason = "Payment was Declined"; break; case PurchaseFailureReason.DuplicateTransaction: reason = "Duplicate Transaction"; break; case PurchaseFailureReason.Unknown: reason = "Please Check your Internet Connection and Try Again"; break; default: reason = "Please Check your Internet Connection and try again"; break; } upgradesUI.ShowStorePurchaseFailed(reason); }
public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { Debug.LogError(string.Format("OnPurchaseFailed: FAIL. Product: '{0}', PurchaseFailureReason: {1}", product.definition.storeSpecificId, failureReason)); if (failureReason != PurchaseFailureReason.UserCancelled) { ToastMessage.ShowCustom(DLocalizationManager.Instance.GetLocalText("cannot_purchase")); } PurchaseInfo info = FindPurchase(product.definition.id); if (onPurchaseCompleted != null) { onPurchaseCompleted(false, info); } onPurchaseCompleted = null; }
public void OnPurchaseFailed(Product i, PurchaseFailureReason p) { PurchaseInProgress.SetValueAndForceNotify(value: false); switch (p) { case PurchaseFailureReason.DuplicateTransaction: GiveIAPToUser(i); break; case PurchaseFailureReason.UserCancelled: IAPNotCompleted.Value = new IAPNotCompleted(m_currentlyActiveIAP, "Cancelled", p.ToString()); break; default: IAPNotCompleted.Value = new IAPNotCompleted(m_currentlyActiveIAP, "Failed", p.ToString()); break; } }
public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { Debug.LogFormat(string.Format("Product {0} purchase failed...", product.definition.storeSpecificId)); switch (failureReason) { case PurchaseFailureReason.PaymentDeclined: Debug.Log("Your payment was declined..."); break; case PurchaseFailureReason.ProductUnavailable: Debug.Log("That product is no longer available..."); break; case PurchaseFailureReason.Unknown: Debug.Log("An unknown problem occurred with your purchase..."); break; } }
public void unityProductPurchaseFailure(Product product, PurchaseFailureReason purchaseFailureReason) { string productId = product.definition.storeSpecificId; string productType = product.definition.type.ToString().ToLower(); string productReceipt = product.receipt; int quantity = 1; string networkStoreType = unityNetworkStoreTypeGet(); string productPurchaseType = unityProductPurchaseTypeGet(productType); LogUtil.LogProduct("SCREEN purchased product: " + productId + ", quantity: " + quantity); purchaseProcessCompleted = true; //ProductNetworkRecord data = // ProductNetworkRecord.Create( // productId, // "Product Purchase", // "Product purchased:" + productId, // false, // product.ToJson(), // productReceipt, // productId, // quantity, // ProductNetworkType.typeThirdParty, // networkStoreType, // productPurchaseType); ProductNetworkRecord data = ProductNetworkRecord.Create( productId, "Product Purchase FAILED", purchaseFailureReason.ToString(), false, product.ToJson(), productReceipt, productId, quantity, ProductNetworkType.typeThirdParty, networkStoreType, productPurchaseType); BroadcastProductNetworksFailed(data); }
/// <summary> /// Called when a purchase fails. /// </summary> public void OnPurchaseFailed(Product i, PurchaseFailureReason p) { string key = "购买失败"; switch (p) { case PurchaseFailureReason.PurchasingUnavailable: key = "系统购买功能不可用"; break; case PurchaseFailureReason.ExistingPurchasePending: key = "购买正在进行中"; break; case PurchaseFailureReason.ProductUnavailable: key = "开发人员配置错误没有商品"; break; case PurchaseFailureReason.SignatureInvalid: key = "购买验证失败"; break; case PurchaseFailureReason.UserCancelled: key = "您取消了购买"; break; case PurchaseFailureReason.PaymentDeclined: key = "付款出现问题"; break; case PurchaseFailureReason.DuplicateTransaction: key = "退出appStore后完成购买"; break; case PurchaseFailureReason.Unknown: key = "未知错误购买失败"; break; } string [] value = { "购买失败", ", ", key }; UIController.Instance.PushHint(p.ToString(), null, value); SendCallBack(false, i.definition.id); }
/// <summary> /// /// </summary> public void OnPurchaseFailed(string error, int code) { if (error.Contains("response:")) { int startAt = error.IndexOf("response:") + 10; int lastAt = error.IndexOf(":", startAt); int.TryParse(error.Substring(startAt, lastAt - startAt), out code); } PurchaseFailureReason reason = PurchaseFailureReason.Unknown; switch (code) { case 1: case -1005: reason = PurchaseFailureReason.UserCancelled; break; case 2: case 3: case -1001: case -1009: reason = PurchaseFailureReason.PurchasingUnavailable; break; case 4: reason = PurchaseFailureReason.ProductUnavailable; break; case 5: case -1003: case -1004: case -1007: reason = PurchaseFailureReason.SignatureInvalid; break; case 7: reason = PurchaseFailureReason.ExistingPurchasePending; break; } callback.OnPurchaseFailed(new PurchaseFailureDescription(currentProduct, reason, error)); }
public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { if (isLog) { Debug.Log(string.Format("Percent [IAP] OnPurchaseFailed: FAIL. Product: {0}, PurchaseFailureReason: {1}", product.definition.storeSpecificId, failureReason)); } isPurchaseInProgress = false; if (buyCallback != null) { buyCallback(GameBaseShopErrorCode.PurchaseFailed, shopId, null, null, null, null, null); } buyCallback = null; if (inappViewUnLockCallback != null) { inappViewUnLockCallback(); } }
public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { // == для IAP Buttons === //bool resultProcessed = false; foreach (IAPButton button in activeButtons) { if (button.productId == product.definition.id) { button.OnPurchaseFailedCallback(product, failureReason); //resultProcessed = true; } } // === end === #region === Статистика === double p_price = Convert.ToDouble(product.metadata.localizedPrice); string p_currency = product.metadata.isoCurrencyCode; string p_transaction = ""; if (!string.IsNullOrEmpty(product.transactionID)) { p_transaction = product.transactionID; } string receipt = ""; if (product.hasReceipt) { receipt = product.receipt; } Game.Metrica.Report_PurchaseComplete(product.definition.id, false, p_price, p_currency, p_transaction, receipt, failureReason.ToString()); #endregion // A product purchase attempt did not succeed. Check failureReason for more detail. Consider sharing // this reason with the user to guide their troubleshooting actions. if (debugMode) { Debug.Log(string.Format("OnPurchaseFailed: FAIL. Product: '{0}', PurchaseFailureReason: {1}", product.definition.storeSpecificId, failureReason)); } OnPurchaseFailedListener?.Invoke(product, failureReason); }
public void ShowStatus(bool isSuccess, UnityEngine.Purchasing.Product product, PurchaseFailureReason reason = PurchaseFailureReason.Unknown) { if (!autoClose) { if (isSuccess) { panel.SetActive(false); } else { transactionStatus.text = "Failed"; if (product != null) { buyStatus.text = product.definition.id + "\n" + reason.ToString() + "\n\n<color=#005ed2>Double tap to close.</color>"; } autoClose = true; } timeStamp = Time.time; } }
public void OnPurchaseFailed(Product product, PurchaseFailureReason reason) { Dictionary<string, object> data = new Dictionary<string, object> { { "productID", product.definition.storeSpecificId }, { "reason", reason }, { "price", product.metadata.localizedPrice }, { "currency", product.metadata.isoCurrencyCode } }; this.m_Analytics.CustomEvent("unity.PurchaseFailed", data); }
public void OnPurchaseFailed(Product i, PurchaseFailureReason p) { this.m_Analytics.OnPurchaseFailed(i, p); this.m_ForwardTo.OnPurchaseFailed(i, p); }
public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { libraryMenu.windowWarning.Show("Произошла ошибка покупки. Ваши деньги не списаны"); Debug.Log(string.Format("OnPurchaseFailed: FAIL. Product: '{0}', PurchaseFailureReason: {1}", product.definition.storeSpecificId, failureReason)); }
public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { // A product purchase attempt did not succeed. Check failureReason for more detail. Consider sharing // this reason with the user to guide their troubleshooting actions. string errorText = failureReason.ToString(); Debug.LogError("IAPMgr Product: "+ product +" failed: "+errorText); if (mCurrentOnFailureCallback != null) { mCurrentOnFailureCallback(errorText); mCurrentOnFailureCallback = null; } }
public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason) { // A product purchase attempt did not succeed. Check failureReason for more detail. Consider sharing this reason with the user. // NGUIDebug.Log (string.Format("OnPurchaseFailed: FAIL. Product: '{0}', PurchaseFailureReason: {1}",product.definition.storeSpecificId, failureReason)); }
public void OnPurchaseFailed(Product product, PurchaseFailureReason reason) { Debug.Log(string.Format("OnPurchaseFailed: FAIL. Product: '{0}', PurchaseFailureReason: {1}", product.definition.storeSpecificId, reason)); }
public void OnPurchaseFailed(Product i, PurchaseFailureReason p) { }
/// <summary> /// This will be called when an attempted purchase fails. /// </summary> public void OnPurchaseFailed(Product item, PurchaseFailureReason reason) { if (isDebug) Debug.Log("IAPManager reports: PurchaseFailed. Error: " + reason); if (purchaseFailedEvent != null) purchaseFailedEvent(reason.ToString()); }
/// <summary> /// This will be called is an attempted purchase fails. /// </summary> public void OnPurchaseFailed(Product item, PurchaseFailureReason r) { Debug.Log("Purchase failed: " + item.definition.id); Debug.Log(r); m_PurchaseInProgress = false; }