2

我想在我的应用程序中离线使用 Mapkit 框架,因此用户不必使用漫游来下载图块。我看过其他使用谷歌地图的地图,并且无需先下载它们就可以在应用程序中使用图块。

怎么可能做到这一点?cached.db 中的缓存切片是否可以保存在项目中的某个位置,以便它们默认存在?我需要创建一个叠加层吗?

我已经看到了许多类似的问题,但我仍然认为那里可能会有答案。谷歌真的不允许离线使用他们的地图图像吗?

我知道我可以使用 mapbox,但我也确信我看到的示例没有使用 mapbox。

我搜索过的许多线程中的一个: iOS 的离线 MapKit 解决方案

非常感谢!安德拉斯

4

2 回答 2

2

不幸的是,这在 iOS 上是不可能的,既没有用于缓存的 API,也没有在使用条款中允许。正如您已经说过的,允许离线映射的唯一方法是使用其他地图框架,如 Mapbox。然而,MKMapView 会缓存一些切片,只要您在连接互联网时加载它们,您只是无法控制缓存多少切片或缓存多长时间。

于 2012-08-06T00:59:02.063 回答
0

您可以使用叠加技术。只需下载一个 geojson 文件并从包含坐标的文件中获取数据。使用叠加绘制这些坐标。此方法将在离线模式下将您的叠加显示为地图。

于 2015-06-09T06:56:35.507 回答