From 262f8d537a186f77d1aa2e9f133e01c11a8ca56b Mon Sep 17 00:00:00 2001 From: Olivier Payen Date: Thu, 21 Apr 2016 13:26:37 +0200 Subject: [PATCH 1/2] Avoid crash if PackageManager returns bad package name or null --- .../leolin/shortcutbadger/ShortcutBadger.java | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/ShortcutBadger/src/main/java/me/leolin/shortcutbadger/ShortcutBadger.java b/ShortcutBadger/src/main/java/me/leolin/shortcutbadger/ShortcutBadger.java index 4d02833..3086b5c 100644 --- a/ShortcutBadger/src/main/java/me/leolin/shortcutbadger/ShortcutBadger.java +++ b/ShortcutBadger/src/main/java/me/leolin/shortcutbadger/ShortcutBadger.java @@ -7,12 +7,20 @@ import android.content.pm.ResolveInfo; import android.os.Build; import android.util.Log; -import me.leolin.shortcutbadger.impl.*; -import java.lang.reflect.Constructor; import java.util.LinkedList; import java.util.List; +import me.leolin.shortcutbadger.impl.AdwHomeBadger; +import me.leolin.shortcutbadger.impl.ApexHomeBadger; +import me.leolin.shortcutbadger.impl.AsusHomeLauncher; +import me.leolin.shortcutbadger.impl.DefaultBadger; +import me.leolin.shortcutbadger.impl.NewHtcHomeBadger; +import me.leolin.shortcutbadger.impl.NovaHomeBadger; +import me.leolin.shortcutbadger.impl.SolidHomeBadger; +import me.leolin.shortcutbadger.impl.SonyHomeBadger; +import me.leolin.shortcutbadger.impl.XiaomiHomeBadger; + /** * @author Leo Lin @@ -89,12 +97,11 @@ public static void removeCountOrThrow(Context context) throws ShortcutBadgeExcep } private static void initBadger(Context context) { - sComponentName = context.getPackageManager().getLaunchIntentForPackage(context.getPackageName()).getComponent(); - - Log.d(LOG_TAG, "Finding badger"); - //find the home launcher Package try { + sComponentName = context.getPackageManager().getLaunchIntentForPackage(context.getPackageName()).getComponent(); + + Log.d(LOG_TAG, "Finding badger"); Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_HOME); ResolveInfo resolveInfo = context.getPackageManager().resolveActivity(intent, PackageManager.MATCH_DEFAULT_ONLY); From 769e9458f1ca75e0369fcfbb58e8359d01e5c649 Mon Sep 17 00:00:00 2001 From: Olivier Payen Date: Thu, 21 Apr 2016 13:31:40 +0200 Subject: [PATCH 2/2] Restore the imports like on the original repo --- .../me/leolin/shortcutbadger/ShortcutBadger.java | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/ShortcutBadger/src/main/java/me/leolin/shortcutbadger/ShortcutBadger.java b/ShortcutBadger/src/main/java/me/leolin/shortcutbadger/ShortcutBadger.java index 3086b5c..f664cce 100644 --- a/ShortcutBadger/src/main/java/me/leolin/shortcutbadger/ShortcutBadger.java +++ b/ShortcutBadger/src/main/java/me/leolin/shortcutbadger/ShortcutBadger.java @@ -7,20 +7,12 @@ import android.content.pm.ResolveInfo; import android.os.Build; import android.util.Log; +import me.leolin.shortcutbadger.impl.*; +import java.lang.reflect.Constructor; import java.util.LinkedList; import java.util.List; -import me.leolin.shortcutbadger.impl.AdwHomeBadger; -import me.leolin.shortcutbadger.impl.ApexHomeBadger; -import me.leolin.shortcutbadger.impl.AsusHomeLauncher; -import me.leolin.shortcutbadger.impl.DefaultBadger; -import me.leolin.shortcutbadger.impl.NewHtcHomeBadger; -import me.leolin.shortcutbadger.impl.NovaHomeBadger; -import me.leolin.shortcutbadger.impl.SolidHomeBadger; -import me.leolin.shortcutbadger.impl.SonyHomeBadger; -import me.leolin.shortcutbadger.impl.XiaomiHomeBadger; - /** * @author Leo Lin