7

我有一个 iOS 应用程序,它使用谷歌地图来显示一个带有兴趣点的城市。现在我也想提供一个离线地图,用户不需要数据连接即可显示。

我检查了OpenStreetMap项目,.osm这个城市的导出为 5MB - 非常适合 iOS 应用程序。我还检查了 routeme 库,但只使用了瓦片,没有生成矢量数据。这个对吗?PNG 图块的文件大小对于我的应用程序来说太大了。

哪个库对显示 OSM-XML 数据有意义?我知道有cloudmade,但这是正确的决定吗?我对他们的许可模式有点困惑。还有其他建议吗?提示?

4

3 回答 3

1

Try skobbler/telenav's sdk based on OSM: http://developer.skobbler.com. You've got offline maps (small vector maps), custom POIs and configurable styles - it should cover your needs.

And the free tier should be enough for you to launch your app and get a couple of users until you'd have to pay.

于 2014-04-22T11:03:09.537 回答
0

Route-me 只渲染瓦片数据,而不是矢量数据。

Cloudmade 没有直接的离线库,您必须自己滚动。 http://support.cloudmade.com/answers/offline-maps

我还没有看到任何开源矢量地图渲染器,但谷歌搜索显示了一两个封闭源渲染器。

于 2011-07-10T12:28:42.850 回答
0

有关 OSM 数据的渲染引擎列表,请参阅http://wiki.openstreetmap.org/wiki/Rendering(免责声明:我是其中之一的作者)。有些是开源的;有些(例如,我的)可免费用于非商业用途,但已关闭源代码。

您可以尝试使用开源库 Mapnik,但 OSM 页面显示它很难设置。这里有一个适用于 iOS 的 Mapnik 视图控制器:https ://gist.github.com/2934223 。

你在那里找到的任何 C 或 C++ 代码当然可以在 iOS 中使用,因为 C 和 C++ 与 Objective C 兼容;我发现将可移植的 C++ 代码挂接到 iOS 应用程序中相对容易。

于 2012-12-17T12:45:40.700 回答