MKDirectionsRequest返回错误的路径

时间:2016-05-12 18:00:32

标签: ios mapkit

我的iOS应用使用MKDirectionsRequest查找源位置和目标位置之间的路径。目的地位置是“固定的”。它是荷兰的Leiden Centraal Raylway Station。

有两种情况:

1)我为“Leiden Centraal”查询启动MKLocalSearchRequest并获取MKMapItem。然后我将此MKMapItem用作MKDirectionsRequest中的目的地。返回的路径很好:

enter image description here

2)我使用

手动创建目的地MKMapItem
MKPlacemark *placemark = [[MKPlacemark alloc] initWithCoordinate:coord addressDictionary:dict];
mapItem = [[MKMapItem alloc] initWithPlacemark:placemark];

coord与方案1中返回给我的MKLocalSearchRequest完全相同。 字典dict包含密钥@"CNPostalAddressStreetKey"

返回的路径也通往莱顿站。但这是错误的,因为它通过一条似乎只用于交付的街道。它甚至不存在于Google地图上的街道上:

enter image description here

那么我做错了什么?如何创建目标MKMapItem以便返回的路径是正确的?或者也许可以序列化MKMapItem返回的“正确”MKLocalSearchRequest以便将来使用它?

1 个答案:

答案 0 :(得分:0)

你可以尝试传递nil而不是地址字典吗?

MKPlacemark *placemark = [[MKPlacemark alloc] initWithCoordinate:coord addressDictionary:nil];
mapItem = [[MKMapItem alloc] initWithPlacemark:placemark];