public void UpgradeDowngradeSubscription(string oldSku, string newSku, GooglePlayProrationMode desiredProrationMode) { Product product = m_StoreCallback.FindProductById(newSku); Product oldProduct = m_StoreCallback.FindProductById(oldSku); if (product != null && product.definition.type == ProductType.Subscription && oldProduct != null && oldProduct.definition.type == ProductType.Subscription) { m_GooglePlayStoreService.Purchase(product.definition, oldProduct, desiredProrationMode); } else { m_StoreCallback?.OnPurchaseFailed( new PurchaseFailureDescription( newSku ?? "", PurchaseFailureReason.ProductUnavailable, "Please verify that the products are subscriptions and are not null.")); } }
/// <summary> /// THIS IS A FAKE, NO CODE WILL BE EXECUTED! /// /// Upgrade or downgrade subscriptions /// </summary> /// <param name="oldSku">current subscription</param> /// <param name="newSku">new subscription to subscribe</param> /// <param name="desiredProrationMode">Specifies the mode of proration. /// <a href="https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.ProrationMode">See more</a> /// </param> public void UpgradeDowngradeSubscription(string oldSku, string newSku, GooglePlayProrationMode desiredProrationMode) { }