aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/cgeo/geocaching/apps
diff options
context:
space:
mode:
authorBananeweizen <bananeweizen@gmx.de>2013-06-21 18:40:55 +0200
committerBananeweizen <bananeweizen@gmx.de>2013-06-21 18:40:55 +0200
commitc9674378346d06000b0a66b919bc57c7729dd2bd (patch)
tree76b890e4bb079d13fb92f11b5cd8caada2f3864c /main/src/cgeo/geocaching/apps
parentd5cfd39dce286d94b84a2acc91e962108be25819 (diff)
downloadcgeo-c9674378346d06000b0a66b919bc57c7729dd2bd.zip
cgeo-c9674378346d06000b0a66b919bc57c7729dd2bd.tar.gz
cgeo-c9674378346d06000b0a66b919bc57c7729dd2bd.tar.bz2
new: only show streetview menu if available
Diffstat (limited to 'main/src/cgeo/geocaching/apps')
-rw-r--r--main/src/cgeo/geocaching/apps/AbstractApp.java4
-rw-r--r--main/src/cgeo/geocaching/apps/cache/navi/StreetviewApp.java8
2 files changed, 9 insertions, 3 deletions
diff --git a/main/src/cgeo/geocaching/apps/AbstractApp.java b/main/src/cgeo/geocaching/apps/AbstractApp.java
index ef56f87..f3715f3 100644
--- a/main/src/cgeo/geocaching/apps/AbstractApp.java
+++ b/main/src/cgeo/geocaching/apps/AbstractApp.java
@@ -5,6 +5,8 @@ import cgeo.geocaching.MainActivity;
import cgeo.geocaching.cgeoapplication;
import cgeo.geocaching.utils.ProcessUtils;
+import org.apache.commons.lang3.StringUtils;
+
import android.content.Intent;
public abstract class AbstractApp implements App {
@@ -26,7 +28,7 @@ public abstract class AbstractApp implements App {
@Override
public boolean isInstalled() {
- if (ProcessUtils.isInstalled(packageName)) {
+ if (StringUtils.isNotEmpty(packageName) && ProcessUtils.isInstalled(packageName)) {
return true;
}
return MainActivity.isIntentAvailable(intent);
diff --git a/main/src/cgeo/geocaching/apps/cache/navi/StreetviewApp.java b/main/src/cgeo/geocaching/apps/cache/navi/StreetviewApp.java
index 012b94f..e2c0828 100644
--- a/main/src/cgeo/geocaching/apps/cache/navi/StreetviewApp.java
+++ b/main/src/cgeo/geocaching/apps/cache/navi/StreetviewApp.java
@@ -4,6 +4,7 @@ import cgeo.geocaching.R;
import cgeo.geocaching.cgeoapplication;
import cgeo.geocaching.activity.ActivityMixin;
import cgeo.geocaching.geopoint.Geopoint;
+import cgeo.geocaching.utils.ProcessUtils;
import android.app.Activity;
import android.content.ActivityNotFoundException;
@@ -12,13 +13,16 @@ import android.net.Uri;
class StreetviewApp extends AbstractPointNavigationApp {
+ private static final String PACKAGE_NAME_STREET_VIEW = "com.google.android.street";
+ private static final boolean INSTALLED = ProcessUtils.isInstalled(PACKAGE_NAME_STREET_VIEW);
+
StreetviewApp() {
super(getString(R.string.cache_menu_streetview), null);
}
@Override
public boolean isInstalled() {
- return true;
+ return INSTALLED;
}
@Override
@@ -26,7 +30,7 @@ class StreetviewApp extends AbstractPointNavigationApp {
try {
activity.startActivity(new Intent(Intent.ACTION_VIEW,
Uri.parse("google.streetview:cbll=" + point.getLatitude() + "," + point.getLongitude())));
- } catch (ActivityNotFoundException e) {
+ } catch (final ActivityNotFoundException e) {
ActivityMixin.showToast(activity, cgeoapplication.getInstance().getString(R.string.err_application_no));
}
}