From a3b48718463770fb3822e193433443975fbf0edb Mon Sep 17 00:00:00 2001 From: Dmytro Ostapovets Date: Thu, 9 May 2019 12:46:46 +0300 Subject: [PATCH 01/12] migrate to billing v2.0 --- .../com/gen/rxbilling/sample/MainActivity.kt | 30 +++++-- app/src/main/res/layout/activity_main.xml | 8 +- app/src/main/res/values/strings.xml | 1 + dependencies.gradle | 4 +- gradle.properties | 2 +- .../com/gen/rxbilling/client/RxBilling.kt | 87 +++++++++++++------ .../connection/BillingClientFactory.kt | 21 +++-- .../connection/BillingServiceFactory.kt | 11 ++- .../rxbilling/exception/BillingException.kt | 54 ++++++------ .../com/gen/rxbilling/flow/RxBillingFlow.kt | 35 +++++--- 10 files changed, 165 insertions(+), 88 deletions(-) diff --git a/app/src/main/java/com/gen/rxbilling/sample/MainActivity.kt b/app/src/main/java/com/gen/rxbilling/sample/MainActivity.kt index 2f64194..7c241e6 100644 --- a/app/src/main/java/com/gen/rxbilling/sample/MainActivity.kt +++ b/app/src/main/java/com/gen/rxbilling/sample/MainActivity.kt @@ -5,6 +5,7 @@ import android.os.Bundle import android.support.v7.app.AppCompatActivity import com.android.billingclient.api.BillingClient import com.android.billingclient.api.BillingFlowParams +import com.android.billingclient.api.SkuDetails import com.gen.rxbilling.client.RxBilling import com.gen.rxbilling.client.RxBillingImpl import com.gen.rxbilling.connection.BillingClientFactory @@ -45,6 +46,9 @@ class MainActivity : AppCompatActivity() { btnLoadDetails.setOnClickListener { loadDetails() } + btnAcknowledge.setOnClickListener { + acknowledge() + } } override fun onStart() { @@ -87,15 +91,14 @@ class MainActivity : AppCompatActivity() { } private fun startFlowWithClient() { - disposable.add(rxBilling.launchFlow(this, BillingFlowParams.newBuilder() - .setSku("you_id") - .setType(BillingClient.SkuType.SUBS) - .build()) - .subscribe({ - Timber.d("startFlowWithClient") - }, { - Timber.e(it) - })) + disposable.add(rxBilling.launchFlow(this, BillingFlowParams.newBuilder() + .setSkuDetails(SkuDetails("{}")) + .build()) + .subscribe({ + Timber.d("startFlowWithClient") + }, { + Timber.e(it) + })) } private fun loadPurchases() { @@ -127,4 +130,13 @@ class MainActivity : AppCompatActivity() { Timber.e(it) })) } + + private fun acknowledge() { + disposable.add(rxBilling.acknowledge("token") + .subscribe({ + Timber.d("acknowledge success") + }, { + Timber.e(it) + })) + } } diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index cd10e23..e3720c1 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -66,7 +66,13 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" /> +