From bf3cd429d3070fd7bb1d79022be13587ec615e6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=80=20?= =?UTF-8?q?=D0=97=D0=B0=D1=86=D0=B5=D0=BF=D0=B8=D0=BD?= Date: Tue, 3 Dec 2019 19:18:21 +0300 Subject: [PATCH] [android] Added handling of play store connection failure during catalog opening --- .../maps/bookmarks/BookmarksCatalogFragment.java | 9 ++++++++- .../maps/purchase/FailedBookmarkPurchaseController.java | 5 +++-- .../mapswithme/maps/purchase/FailedPurchaseChecker.java | 1 + 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/android/src/com/mapswithme/maps/bookmarks/BookmarksCatalogFragment.java b/android/src/com/mapswithme/maps/bookmarks/BookmarksCatalogFragment.java index 32a27d359e..cea206d31e 100644 --- a/android/src/com/mapswithme/maps/bookmarks/BookmarksCatalogFragment.java +++ b/android/src/com/mapswithme/maps/bookmarks/BookmarksCatalogFragment.java @@ -117,6 +117,7 @@ public class BookmarksCatalogFragment extends BaseWebViewMwmFragment super.onStart(); mDelegate.onStart(); mFailedPurchaseController.addCallback(mPurchaseChecker); + mFailedPurchaseController.validateExistingPurchases(); mProductDetailsLoadingManager.addCallback(mProductDetailsLoadingCallback); } @@ -161,7 +162,6 @@ public class BookmarksCatalogFragment extends BaseWebViewMwmFragment setHasOptionsMenu(true); mFailedPurchaseController = PurchaseFactory.createFailedBookmarkPurchaseController(requireContext()); mFailedPurchaseController.initialize(requireActivity()); - mFailedPurchaseController.validateExistingPurchases(); mPurchaseChecker = new FailedBookmarkPurchaseChecker(); mProductDetailsLoadingManager = PurchaseFactory.createInAppBillingManager(); mProductDetailsLoadingManager.initialize(requireActivity()); @@ -506,6 +506,13 @@ public class BookmarksCatalogFragment extends BaseWebViewMwmFragment { mDelegate.authorize(() -> mFailedPurchaseController.validateExistingPurchases()); } + + @Override + public void onStoreConnectionFailed() + { + LOGGER.e(TAG, "Failed to check failed bookmarks due play store connection failure"); + loadCatalog(null); + } } private class ProductDetailsLoadingCallback extends AbstractProductDetailsLoadingCallback diff --git a/android/src/com/mapswithme/maps/purchase/FailedBookmarkPurchaseController.java b/android/src/com/mapswithme/maps/purchase/FailedBookmarkPurchaseController.java index 42854fa25f..c2a10539b8 100644 --- a/android/src/com/mapswithme/maps/purchase/FailedBookmarkPurchaseController.java +++ b/android/src/com/mapswithme/maps/purchase/FailedBookmarkPurchaseController.java @@ -2,9 +2,9 @@ package com.mapswithme.maps.purchase; import android.app.Activity; import android.os.Bundle; + import androidx.annotation.NonNull; import androidx.annotation.Nullable; - import com.android.billingclient.api.Purchase; import com.android.billingclient.api.SkuDetails; import com.mapswithme.maps.PrivateVariables; @@ -161,7 +161,8 @@ public class FailedBookmarkPurchaseController implements PurchaseController