Fix billing deprecations

This commit is contained in:
Mygod
2021-05-19 12:14:43 -04:00
parent 51361bb4f6
commit 17d64e5c2b

View File

@@ -32,21 +32,20 @@ class EBegFragment : AppCompatDialogFragment() {
} }
override fun onBillingSetupFinished(billingResult: BillingResult) { override fun onBillingSetupFinished(billingResult: BillingResult) {
if (billingResult.responseCode == BillingClient.BillingResponseCode.OK) GlobalScope.launch(Dispatchers.IO) { if (billingResult.responseCode != BillingClient.BillingResponseCode.OK) {
billingClient.queryPurchases(BillingClient.SkuType.INAPP).apply { Timber.e("onBillingSetupFinished: ${billingResult.responseCode}")
if (responseCode == BillingClient.BillingResponseCode.OK) { } else GlobalScope.launch(Dispatchers.Main.immediate) {
onPurchasesUpdated(this.billingResult, purchasesList) val result = billingClient.queryPurchasesAsync(BillingClient.SkuType.INAPP)
onPurchasesUpdated(result.billingResult, result.purchasesList)
} }
} }
} else Timber.e("onBillingSetupFinished: ${billingResult.responseCode}")
}
override fun onBillingServiceDisconnected() { override fun onBillingServiceDisconnected() {
Timber.e("onBillingServiceDisconnected") Timber.e("onBillingServiceDisconnected")
billingClient.startConnection(this) billingClient.startConnection(this)
} }
override fun onPurchasesUpdated(billingResult: BillingResult, purchases: MutableList<Purchase>?) { override fun onPurchasesUpdated(billingResult: BillingResult, purchases: List<Purchase>?) {
if (billingResult.responseCode == BillingClient.BillingResponseCode.OK && purchases != null) { if (billingResult.responseCode == BillingClient.BillingResponseCode.OK && purchases != null) {
// directly consume in-app purchase, so that people can donate multiple times // directly consume in-app purchase, so that people can donate multiple times
purchases.filter { it.purchaseState == Purchase.PurchaseState.PURCHASED }.map(this::consumePurchase) purchases.filter { it.purchaseState == Purchase.PurchaseState.PURCHASED }.map(this::consumePurchase)