diff options
Diffstat (limited to 'main/src/cgeo/geocaching/maps/MapProviderFactory.java')
| -rw-r--r-- | main/src/cgeo/geocaching/maps/MapProviderFactory.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/main/src/cgeo/geocaching/maps/MapProviderFactory.java b/main/src/cgeo/geocaching/maps/MapProviderFactory.java index c7c85f5..3509209 100644 --- a/main/src/cgeo/geocaching/maps/MapProviderFactory.java +++ b/main/src/cgeo/geocaching/maps/MapProviderFactory.java @@ -16,15 +16,21 @@ public class MapProviderFactory { private static MapProviderFactory instance = null; - private MapProvider[] mapProviders; + private final MapProvider[] mapProviders; private SortedMap<Integer, String> mapSources; private MapProviderFactory() { // add GoogleMapProvider only if google api is available in order to support x86 android emulator + boolean googleMaps = true; try { Class.forName("com.google.android.maps.MapActivity"); - mapProviders = new MapProvider[] { new GoogleMapProvider(GOOGLEMAP_BASEID), new MapsforgeMapProvider(MFMAP_BASEID) }; } catch (ClassNotFoundException e) { + googleMaps = false; + } + if (googleMaps) { + mapProviders = new MapProvider[] { new GoogleMapProvider(GOOGLEMAP_BASEID), new MapsforgeMapProvider(MFMAP_BASEID) }; + } + else { mapProviders = new MapProvider[] { new MapsforgeMapProvider(MFMAP_BASEID) }; } |
