aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/cgeo/geocaching/utils/ProcessUtils.java
diff options
context:
space:
mode:
Diffstat (limited to 'main/src/cgeo/geocaching/utils/ProcessUtils.java')
-rw-r--r--main/src/cgeo/geocaching/utils/ProcessUtils.java20
1 files changed, 19 insertions, 1 deletions
diff --git a/main/src/cgeo/geocaching/utils/ProcessUtils.java b/main/src/cgeo/geocaching/utils/ProcessUtils.java
index 1c05e84..85cedc5 100644
--- a/main/src/cgeo/geocaching/utils/ProcessUtils.java
+++ b/main/src/cgeo/geocaching/utils/ProcessUtils.java
@@ -14,8 +14,26 @@ public final class ProcessUtils {
// utility class
}
+ /**
+ * Preferred method to detect the availability of an external app
+ *
+ * @param packageName
+ * @return
+ */
+ public static boolean isLaunchable(final String packageName) {
+ return getLaunchIntent(packageName) != null;
+ }
+
+ /**
+ * Checks whether a launch intent is available or if the package is just installed
+ * This function is relatively costly, so if you know that the package in question has
+ * a launch intent, use isLaunchable() instead.
+ *
+ * @param packageName
+ * @return
+ */
public static boolean isInstalled(final String packageName) {
- return (getLaunchIntent(packageName) != null) || hasPackageInstalled(packageName);
+ return isLaunchable(packageName) || hasPackageInstalled(packageName);
}
/**