示例#1
0
        /// <summary>
        /// If you use the Google Play Billing Library version 2.0 or newer, you must acknowledge all purchases within three days.
        /// </summary>
        /// <param name="purchase"></param>
        /// <returns></returns>
        private async Task <bool> NotifyFullFillmentAsync(Purchase purchase)
        {
            if (!purchase.IsAcknowledged)
            {
                if (BillingClient == null || !BillingClient.IsReady)
                {
                    await ConnectAsync();
                }

                _tcsAcknowledge = new TaskCompletionSource <bool>();

                AcknowledgePurchaseParams acknowledgePurchaseParams =
                    AcknowledgePurchaseParams.NewBuilder()
                    .SetPurchaseToken(purchase.PurchaseToken)
                    .Build();
                BillingClient.AcknowledgePurchase(acknowledgePurchaseParams, this);

                return(await _tcsAcknowledge?.Task);
            }
            return(true);
        }