diff options
| author | Bananeweizen <bananeweizen@gmx.de> | 2013-06-21 18:40:55 +0200 |
|---|---|---|
| committer | Bananeweizen <bananeweizen@gmx.de> | 2013-06-21 18:40:55 +0200 |
| commit | c9674378346d06000b0a66b919bc57c7729dd2bd (patch) | |
| tree | 76b890e4bb079d13fb92f11b5cd8caada2f3864c /main/src/cgeo/geocaching/apps | |
| parent | d5cfd39dce286d94b84a2acc91e962108be25819 (diff) | |
| download | cgeo-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.java | 4 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/apps/cache/navi/StreetviewApp.java | 8 |
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)); } } |
