4

We're developing an app with some map features, with

<uses-library android:name="com.google.android.maps" />

in the manifest. It runs well on a Xoom and a Galaxy Tab, as well as several phones. It also runs fine in one of the Google APIs emulators. When installing to the Kindle Fire, we get

[2011-12-20 16:25:04 - android] Installation error: INSTALL_FAILED_MISSING_SHARED_LIBRARY
[2011-12-20 16:25:04 - android] Please check logcat output for more details.
[2011-12-20 16:25:04 - android] Launch canceled!

with

E/PackageManager( 1385): Package <package> requires unavailable shared library com.google.android.maps; failing!
W/PackageManager( 1385): Package <package> couldn't be installed.
D/AndroidRuntime(12606): Shutting down VM

This post: https://stackoverflow.com/a/4509787/931277 confirms what I was starting to suspect, that the required api is really missing from the device.

Is there any way to include this library with an application, rather than relying on its inclusion in the Android build on the device?

Community
  • 1
  • 1
dokkaebi
  • 9,004
  • 3
  • 42
  • 60

4 Answers4

9

Not only is there no "way to access this api", but what you are suggesting as the alternative ("hunting down a Google Maps apk and installing that onto the Fire") is not only a copyright violation but probably will not work, since the Google Maps app will not supply the system library that other apps would use.


UPDATE based on edit:

Is there any way to include this library with an application, rather than relying on its inclusion in the Android build on the device?

No, sorry. Google licenses Google Maps (app and system library), and there are no distribution options outside of licensing it from Google for use with firmware.

You might consider OSMDroid and OpenStreetMap, or using WebView and the Web-based Google Maps.

CommonsWare
  • 986,068
  • 189
  • 2,389
  • 2,491
  • @dokkaebi again, you cannot, under any circumstances use the google library. Remove its references from your application and switch to using the open source bing-maps sdk if required. – William Melani Dec 21 '11 at 01:08
3

deCarta offers a full featured Android API for mapping, geocoding, reverse geocoding, advanced driving directions, and POI search. It runs like a champ on the Kindle Fire and offers both OpenGL or Canvas based map rendering. Check it out:

http://developer.decarta.com/Apis/Android

also: if you register on the site you actually get all the source code for the entire API free. They also have HTML5 APIs that work great on the Kindle browser as well.

b-h-
  • 2,651
  • 1
  • 18
  • 9
  • This looks like a nice solution in this space. Worth mentioning that it is a paid service beyond the first 1 million api calls. Thanks – dokkaebi Feb 15 '12 at 17:06
1

Amazon now offers a MAPS API, with two core features:

  • Interactive Maps. You can embed a Map View in your app for customers to pan, zoom and fling around the world. You have the option to display a user’s current location, switch between standard maps and satellite view, and more.
  • Custom Overlays. You can display the locations of businesses, landmarks and other points of interest with your own customized markers and pins.

check it out here https://developer.amazon.com/sdk/maps.html

Abu Obeida
  • 11
  • 1
1

Have you tried this http://code.google.com/apis/maps/articles/android_v3.html

Shiprack
  • 1,095
  • 11
  • 18
  • A rewrite using the web api could be an option in the future, but I was hoping for a drop-in solution. – dokkaebi Feb 05 '12 at 05:32