From bd9c74b8e29ddb30228aab5363c0435b4597a2ff Mon Sep 17 00:00:00 2001 From: M66B Date: Sun, 20 Mar 2022 10:15:30 +0100 Subject: [PATCH] Added IAB connected check --- .../eu/faircode/email/ActivityBilling.java | 30 ++++++++++++++----- .../eu/faircode/email/ActivityBilling.java | 18 +++++++++-- 2 files changed, 39 insertions(+), 9 deletions(-) diff --git a/app/src/fdroid/java/eu/faircode/email/ActivityBilling.java b/app/src/fdroid/java/eu/faircode/email/ActivityBilling.java index f8b05c83e7..460fdaaac5 100644 --- a/app/src/fdroid/java/eu/faircode/email/ActivityBilling.java +++ b/app/src/fdroid/java/eu/faircode/email/ActivityBilling.java @@ -78,8 +78,9 @@ public class ActivityBilling extends ActivityBase implements /*PurchasesUpdatedL static final String ACTION_PURCHASE_ERROR = BuildConfig.APPLICATION_ID + ".ACTION_PURCHASE_ERROR"; private static final String SKU_TEST = "android.test.purchased"; - private final static long MAX_SKU_CACHE_DURATION = 24 * 3600 * 1000L; // milliseconds - private final static long MAX_SKU_NOACK_DURATION = 24 * 3600 * 1000L; // milliseconds + private static final long IAB_CONNECTED_CHECK = 10 * 1000L; + private static final long MAX_SKU_CACHE_DURATION = 24 * 3600 * 1000L; // milliseconds + private static final long MAX_SKU_NOACK_DURATION = 24 * 3600 * 1000L; // milliseconds @Override @SuppressLint("MissingSuperCall") @@ -106,11 +107,26 @@ public class ActivityBilling extends ActivityBase implements /*PurchasesUpdatedL if (Helper.isPlayStoreInstall() || isTesting(this)) { Log.i("IAB start"); - //billingClient = BillingClient.newBuilder(this) - // .enablePendingPurchases() - // .setListener(this) - // .build(); - //billingClient.startConnection(billingClientStateListener); +/* + billingClient = BillingClient.newBuilder(this) + .enablePendingPurchases() + .setListener(this) + .build(); + billingClient.startConnection(billingClientStateListener); + + getMainHandler().postDelayed(new Runnable() { + @Override + public void run() { + try { + boolean connected = (billingClient != null && + billingClient.getConnectionState() == BillingClient.ConnectionState.CONNECTED); + EntityLog.log(ActivityBilling.this, "IAB check connected=" + connected); + } catch (Throwable ex) { + Log.e(ex); + } + } + }, IAB_CONNECTED_CHECK); +*/ } } diff --git a/app/src/play/java/eu/faircode/email/ActivityBilling.java b/app/src/play/java/eu/faircode/email/ActivityBilling.java index 568ce3917e..06b0a2ff01 100644 --- a/app/src/play/java/eu/faircode/email/ActivityBilling.java +++ b/app/src/play/java/eu/faircode/email/ActivityBilling.java @@ -78,8 +78,9 @@ public class ActivityBilling extends ActivityBase implements PurchasesUpdatedLis static final String ACTION_PURCHASE_ERROR = BuildConfig.APPLICATION_ID + ".ACTION_PURCHASE_ERROR"; private static final String SKU_TEST = "android.test.purchased"; - private final static long MAX_SKU_CACHE_DURATION = 24 * 3600 * 1000L; // milliseconds - private final static long MAX_SKU_NOACK_DURATION = 24 * 3600 * 1000L; // milliseconds + private static final long IAB_CONNECTED_CHECK = 10 * 1000L; + private static final long MAX_SKU_CACHE_DURATION = 24 * 3600 * 1000L; // milliseconds + private static final long MAX_SKU_NOACK_DURATION = 24 * 3600 * 1000L; // milliseconds @Override @SuppressLint("MissingSuperCall") @@ -111,6 +112,19 @@ public class ActivityBilling extends ActivityBase implements PurchasesUpdatedLis .setListener(this) .build(); billingClient.startConnection(billingClientStateListener); + + getMainHandler().postDelayed(new Runnable() { + @Override + public void run() { + try { + boolean connected = (billingClient != null && + billingClient.getConnectionState() == BillingClient.ConnectionState.CONNECTED); + EntityLog.log(ActivityBilling.this, "IAB check connected=" + connected); + } catch (Throwable ex) { + Log.e(ex); + } + } + }, IAB_CONNECTED_CHECK); } }