如何缓存谷歌地图瓦片以供离线使用?

50

像诺基亚的OVI地图可以离线使用一样,也一定有缓存Google地图瓦片的方法。有什么提示吗?


你在寻找关于安卓应用的信息吗? - sam_k
我想在Android应用程序中使用Google地图开发相同的缓存管理,这是可能的吗? - sam_k
1
有些人说这是允许的:https://dev59.com/d2Ag5IYBdhLWcg3ws8vo - Shirish Herwade
这可能会帮助其他用户 https://www.dogtownmedia.com/google-sdks-enable-ios-android-mobile-apps-work-offline/ - Jageen
6个回答

44
如果您试图缓存Google提供的地图瓦片,那可能会违反Google的服务条款(除非在某些情况下,您已购买了他们的企业Maps API Premier)。这就是为什么gmapcatcher将其从列表中划掉的原因。可以参见http://code.google.com/p/gmapcatcher/issues/detail?id=210
在上述gmapcatcher URL中,您还可以找到一个可以下载瓦片的Shell脚本(作者如此说)。
还有其他项目试图使Google Maps离线可用: http://code.google.com/p/ogmaps/ http://code.google.com/p/gmapoffline/ 最后,如果Google Earth能够满足您的需求,那么您可以使用它。根据http://www.google.com/permissions/geoguidelines.html页面,使用Google Earth的离线功能需要Google Earth Enterprise许可证。
请注意,前面的页面还说:“您不得从Google Maps或Earth中抓取或以其他方式导出内容,或将其保存以供离线使用。”因此,如果您试图缓存瓦片,这几乎肯定会被认为(至少在Google看来)是违反服务条款的行为。

我认为你不能为一个应用程序使用大规模缓存,但我想知道仅限个人使用的缓存是否会构成违规。 - heltonbiker
把谷歌地图瓦片仅缓存到内存中,怎么样? - Muhammad Babar
他说这是允许的 https://dev59.com/d2Ag5IYBdhLWcg3ws8vo - Shirish Herwade

27

不幸的是,我找到了这个链接,它似乎表明我们不能在本地缓存这些内容,因此使得这个问题无意义。

http://support.google.com/enterprise/doc/gme/terms/maps_purchase_agreement.html

4.4 缓存限制。客户不得预获取、检索、缓存、索引或存储任何内容或服务的部分,唯一的例外是客户可能仅为了改善由于网络延迟而导致的客户实现性能而临时、安全地存储少量内容。存储必须以以下方式进行:(a) 不允许在服务以外使用该内容;(b) 仅基于会话(关闭浏览器后,禁止任何额外的存储);(c) 不操纵或聚合任何内容或服务的部分;(d) 不会阻止 Google 准确跟踪页面浏览量;和 (e) 不会以任何方式修改或调整归属。

因此法律上看来我们不能离线使用谷歌地图图块。


17

更新:

我从谷歌地图的使用条款中找到了以下内容:

第10.5节

不允许缓存或存储。您不得预取、缓存、索引或存储任何内容,以在服务外使用,但是您可以仅为了由于网络延迟而改善您的地图API实现的性能(而不是为了防止Google准确跟踪使用情况)而存储有限量的内容。只有这样的存储:是临时的(最长不超过30个日历天);是安全的;不会操作或聚合内容或服务的任何部分;并且不会以任何方式修改归属。

这意味着我们实际上可以进行有限时间的缓存。


5

http://www.google.com/earth/media/licensing.html网站上有一个“移动”部分,其中包括:

与我们在线条款类似,如果您使用我们的API或移动设备原生的Google Maps实现(例如在Android手机或iPhone上),不需要特别的权限,但必须始终保持Google名称可见。 离线缓存我们的内容是不允许的。


3
你可以使用Open Street Map:你会发现有许多不同的图层和地图类型,而且这是完全免费的。你可以下载所有你想要的地图瓦片。当然,由于任何人都可以增强地图,它显示的信息比Google的地图更多。如果需要帮助,你可以向社区寻求帮助,该社区也非常活跃。

9
问谷歌去哪问谷歌。 - Jacob

1
在安卓平台上,Oruxmaps(http://www.oruxmaps.com)能够很好地缓存所有的WMS资源。它可以在应用商店中下载。我经常在没有网络连接的偏远地区使用它,非常好用。

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