管理 MapView 的缓存

Posted

技术标签:

【中文标题】管理 MapView 的缓存【英文标题】:Manage cache of MapView 【发布时间】:2011-01-11 17:31:22 【问题描述】:

我制作了一个基于 Google Maps API 的应用程序。问题是我的应用程序是在没有网络的地方使用的。 所以我想管理缓存,以确保特定的切片在旅途中被保存并可用(我想将它们重定向到数据库中,但任何方法都可以)。

目前,除了尝试重新编码 MapView 类之外,我还没有找到任何其他方法(未经测试)。我专注于谷歌 API 以便进行卫星摄影(对于没有道路的地方)。我能做什么?

【问题讨论】:

【参考方案1】:

你想要的违反了android Maps APIs Terms of Service(参见第 8.2 节)。您需要找到一个可供使用的替代映射引擎,可能基于OpenStreetMap。

【讨论】:

地图引擎不是问题,真正的问题是访问卫星数据...但是我之前没有看到这个8.2部分。所以我不得不寻找谷歌以外的其他地图提供商:(我仍然不知道他们为什么不提供缓存管理设施......【参考方案2】:

osmdroid 现在提供了一个几乎可以用作谷歌地图替代品的库。它可以通过下载和提取AndNav地图瓦片来支持离线地图。

http://code.google.com/p/osmdroid/

【讨论】:

有没有办法使用这个库来访问卫星视图?似乎并非如此。我的软件专用于没有道路的登山,所以精确的卫星视图是最大的要求......

以上是关于管理 MapView 的缓存的主要内容,如果未能解决你的问题,请参考以下文章

andriod arcgis保存Mapview为图片

片段中的 MapView(蜂窝)

如何在mapview中为标记(叠加)图像设置动画

如何使用 Mapview 设置布局

如何使用包含 MapView 的包装 TabHost,该 MapView 在其下方显示 AdMob 视图?

MapView 的 onDestroy() 导致 UninitializedPropertyAccessException