Так что я решил использовать техническую поддержку Apple Developer, чтобы действительно прояснить это.Это ответ:
Здравствуйте,
Спасибо за ваш запрос в службу технической поддержки Apple Worldwide Developer.Я отвечаю, чтобы сообщить вам, что я получил ваш запрос о технической помощи.
Де-факто стандартный способ сделать это - использовать приложение «Карта».Я понимаю, что это не то, что вы хотите.Вы хотите остаться в вашем приложении.API MKMapView не обеспечивает такой уровень поддержки, когда речь идет о пользовательских указаниях.Вам придется полагаться на отдельный веб-сервис для получения этих указаний, а затем нанести каждую точку широты / долготы на MKMapView.В основном вам нужно будет сделать HTTP-запрос к Google Directions API.Условия требуют, чтобы вы отображали результаты на карте Google;поскольку MKMapView показывает Google, с этим все должно быть в порядке.
http://code.google.com/apis/maps/documentation/directions/#DirectionsRequests
Если вам удастся получить указания по вождению с помощью, скажем, службы Yahoo или Google, MKMapView позволит вам составить визуальный курс, используяMKOverlayPathView и MKShapes для рисования многоугольников.У Apple есть пример под названием «KMLViewer», который находится по адресу http://developer.apple.com/library/ios/#samplecode/KMLViewer/Introduction/Intro.html. Он показывает, как строить точки на основе KML.Подход тот же, так как мы имеем дело с координатами широта / долгота.
Возможно, вы захотите использовать приложение Map, что было бы значительно проще.Все, что вам нужно, это:
// for lat/long directions
NSString *urlString1 = @"http://maps.google.com/maps?daddr=37.324885,-122.032378&saddr=37.332094,-122.03124";
// for address directions
NSString *urlString2 = @"http://maps.google.com/maps?f=d&source=s_d&saddr=1+Infinite+Loop,+Cupertino,+CA+95014&daddr=Mandarin+Gourmet,+Cupertino,+CA&hl=en&geocode=FcajOQIdYvO5-Ckbd16TtrWPgDFAc4Pi50E92A%3BFZ2GOQIdLe65-CHRv0sTH7YegykLqKn9rbWPgDGUnqKbIqi1Bg&mra=ls&sll=37.325567,-122.032989&sspn=0.007243,0.007285&ie=UTF8&ll=37.328195,-122.031466&spn=0.007243,0.007285&z=17";
[[UIApplication sharedApplication] openURL: [NSURL URLWithString: urlString1]];
ВТОРОЙ E-MAIL:
Просто чтобы быть ясным в моем последнем электронном письме об условиях использования служб Google.Google требует, чтобы вы отображали результаты маршрута на карте Google, которую использует MKMapView.Тем не менее, я бы дважды проверил собственные условия Apple в отношении использования внешних сервисов, таких как пользовательские инструкции на самом MKMapView.Я не хочу, чтобы вы шли по пути, только чтобы найти юридические ограничения на этом пути.