Kindle Fire和Google Maps API

4
我们正在开发一个带有一些地图功能的应用程序,使用
<uses-library android:name="com.google.android.maps" />

在清单文件中。它在Xoom和Galaxy Tab上运行良好,以及几部手机上也能正常运行。在一个Google APIs模拟器上也能正常运行。但是在Kindle Fire上安装时,我们遇到了问题。
[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!

使用

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

这篇文章:https://dev59.com/mFLTa4cB1Zd3GeqPd9rx#4509787证实了我开始怀疑的事情,即设备上确实缺少所需的API。
是否有办法在应用程序中包含此库,而不是依赖于其包含在Android设备构建中?

你必须完全消除对该库的需求。 - William Melani
4个回答

9
不仅没有“访问此API的方法”,而且您所建议的替代方案(“寻找Google Maps apk并将其安装到Fire上”)不仅侵犯版权,而且可能无法正常工作,因为Google Maps应用程序不会提供其他应用程序使用的系统库。

根据编辑更新:

是否有任何方法可以将此库包含在应用程序中,而不是依赖于其在设备上的Android构建中的包含?

不好意思,没有。Google许可证授予Google Maps(应用程序和系统库),并且除了从Google获得许可证以用于固件之外,没有分发选项。

您可以考虑使用OSMDroid和OpenStreetMap,或者使用 WebView 和基于Web的Google Maps。


@dokkaebi,无论如何都不能使用Google库。从您的应用程序中删除其引用,并在必要时切换到使用开源的Bing Maps SDK。 - William Melani

3
deCarta提供了一款全功能的Android API,包括地图、地理编码、反向地理编码、高级驾驶路线和POI搜索等功能。它可以在Kindle Fire上流畅运行,并提供基于OpenGL或Canvas的地图渲染。请查看:http://developer.decarta.com/Apis/Android
此外,如果您在该网站上注册,您将获得整个API的所有源代码,完全免费。他们也有HTML5 API,在Kindle浏览器上运行良好。

这看起来是这个领域的一个不错的解决方案。值得一提的是,在第一百万次 API 调用之后,这是一个付费服务。谢谢。 - dokkaebi

1

亚马逊现在提供了一个MAPS API,具有两个核心功能:

  • 交互式地图。您可以在应用程序中嵌入地图视图,供客户在世界范围内平移、缩放和滑动。您可以选择显示用户当前位置,切换标准地图和卫星视图等等。
  • 自定义覆盖层。您可以使用自己定制的标记和图钉显示企业、地标和其他感兴趣的点的位置。

请点击这里查看 https://developer.amazon.com/sdk/maps.html


1

重写使用Web API可能是未来的选择,但我希望有一个即插即用的解决方案。 - dokkaebi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接