From 2fb4dbd275a24be0ab150199893bb0fa4e8a2835 Mon Sep 17 00:00:00 2001 From: Rahul Patel Date: Sun, 8 Jul 2018 20:25:21 +0530 Subject: [PATCH] Dont crash ! instead try login with dummy --- .../dragons/aurora/task/CategoryTaskHelper.java | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/com/dragons/aurora/task/CategoryTaskHelper.java b/app/src/main/java/com/dragons/aurora/task/CategoryTaskHelper.java index a33d5ffd5..abf460e05 100644 --- a/app/src/main/java/com/dragons/aurora/task/CategoryTaskHelper.java +++ b/app/src/main/java/com/dragons/aurora/task/CategoryTaskHelper.java @@ -28,6 +28,8 @@ import android.util.Log; import android.view.animation.AnimationUtils; import com.dragons.aurora.AppListIteratorHelper; +import com.dragons.aurora.ContextUtil; +import com.dragons.aurora.CredentialsEmptyException; import com.dragons.aurora.PlayStoreApiAuthenticator; import com.dragons.aurora.R; import com.dragons.aurora.adapters.RecyclerAppsAdapter; @@ -72,20 +74,24 @@ public class CategoryTaskHelper { private List getApps(String categoryId, GooglePlayAPI.SUBCATEGORY subCategory) throws IOException { List apps = new ArrayList<>(); - AppListIteratorHelper iterator = new AppListIteratorHelper(new CategoryAppsIterator( - new PlayStoreApiAuthenticator(context).getApi(), categoryId, subCategory)); + AppListIteratorHelper iterator = null; try { + iterator = new AppListIteratorHelper(new CategoryAppsIterator( + new PlayStoreApiAuthenticator(context).getApi(), categoryId, subCategory)); iterator.setGooglePlayApi(new PlayStoreApiAuthenticator(context).getApi()); } catch (IOException e) { - Log.e(getClass().getSimpleName(), "Building an api object from preferences failed"); + if (e instanceof CredentialsEmptyException) + ContextUtil.toastShort(context, "You are logged out"); + else + Log.e(getClass().getSimpleName(), "Building an api object from preferences failed"); } - if (!iterator.hasNext()) { + if (iterator != null && !iterator.hasNext()) { return new ArrayList<>(); } - while (iterator.hasNext() && apps.isEmpty()) { + while (iterator != null && iterator.hasNext() && apps.isEmpty()) { try { apps.addAll(iterator.next()); } catch (IteratorGooglePlayException e) {