抢购苹果地图

时间:2013-11-06 14:53:22

标签: ios map navigation gps mapkit

我有一个项目限制使用苹果地图,corelocation和apple的mapkit - 不允许第三方接口。

我需要显示一个地图视图,显示用户的当前位置(标准蓝点)并同时在最靠近用户当前位置的道路上放置一个图钉 - 一个“对齐道路”,这是用户最近的最佳估计值位置。

我知道如何检索用户的当前地址并使用返回的街道名称和地址,但我不知道如何将引脚添加到mkmapview中生成的街道。我查看了mkdirectionsrequest但不确定如何调整返回的数据来解决这个问题。

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:2)

我认为通过调整位置服务模式,您可以通过位置服务完成抢修。

Apple的Developer docs on CLLocationManager提供四种“活动”模式:

  • 其他〜未指定
  • 汽车〜汽车,卡车,公路车辆
  • 健身〜行人相关活动
  • OtherNavigation 〜火车,飞机,船

(没有评论第一个和第四个之间的模糊性......开发人员文档中的细节也比上面的几个词摘要更详细)

基本上你将CLActivityType设置为CLActivityTypeAutomotiveNavigation,并且假设你在公路车辆中它会做出明智的事情。从我所看到的情况来看,尽管你仍然受到苹果地图保真度的限制,但这种情况更加积极地与车道相吻合。

答案 1 :(得分:1)

对于对齐道路要素,您需要该街道的纬度和经度坐标序列。您通常永远不会获得该矢量信息,因为该矢量数据的所有者( TomTom 诺基亚)不允许这样做。

只有基于 OpenStreetMap 的数据是免费的,并且可以使用矢量数据。

ios使用 TomTom 数据,并且如您所预期的那样,您将无法获得街道折线的坐标。