2015-06-19 14 views
13

Próbuję wyświetlić wszystkich możliwych tras pomiędzy punktami A i B w moim Swift aplikacji (iOS 8+ docelowy). I pozwalają użytkownikowi na wybór jednego z możliwych tras w mojej aplikacji. Następnie chciałbym użytkownika, aby być w stanie poruszać się z wybraną trasą (MKRoute) w Apple Maps aplikacji, używającjabłko mapy aplikacja z konkretnych informacji MKRoute

var fullRouteResponse:MKDirectionsResponse? //This variable has MKRoute information 

@IBAction func openInAppleMaps(sender: AnyObject) 
{ 
    let placemark = MKPlacemark(coordinate: destinationCoordinate!, addressDictionary: nil) 

    mapItem = MKMapItem(placemark: placemark) 

    mapItem.openInMapsWithLaunchOptions(
     [MKLaunchOptionsDirectionsModeKey: MKLaunchOptionsDirectionsModeDriving, 
     MKLaunchOptionsMapTypeKey: MKMapType.Standard.rawValue, 
     MKLaunchOptionsShowsTrafficKey: true ]) 

} 

To otwiera mapach app grzywny, ale jestem w stanie dowiedzieć się, jak przekazać konkretne wybrane informacje MKRoute, dzięki czemu użytkownik nie musi ponownie wybrać ze wszystkich możliwych tras na mapach Apple app.

Nie jestem pewien, czy jest to w ogóle możliwe, więc wszelkie wskazówki naprawdę pomóc. Dzięki!

+0

podobne: [pytanie] (http://stackoverflow.com/questions/12658826/open-apple-maps-and-start-route-from-current-location-to-home-immediately -in-ios) – Raptor

+0

@Raptor Wciąż bez odpowiedzi, choć :(Jestem w stanie otworzyć aplikację Mapy i trasy do miejsca docelowego (Mapy aplikacja pyta które trasy do wyboru). nie bierze pod uwagę fakt, że już mam . wybrano konkretną drogę w moim app jestem w stanie przekazać te informacje do aplikacji mapy – sh4k

Odpowiedz

5

W documentation nie mówi, że jest możliwe, aby przejść wstępnie skonfigurowanej ścieżkę do natywnej aplikacji Mapy. Tak to jest niemożliwe, aby robić to, co chcesz.

Jeśli tu jest nieudokumentowane sposób, aby go osiągnąć chciałbym wiedzieć.

+0

Choć to nie odpowiedź chciałem dla niego jest poprawna;). – arnoapp

1

Tak, można to zrobić za pomocą MapLink:

Według MapLink Documentation, łatwo można to zrobić napełniania 'saddr' i 'daddr' parametry. Tak:

if (UIApplication.sharedApplication().canOpenURL(NSURL(string:"http://maps.apple.com")!)) { 
     UIApplication.sharedApplication().openURL(NSURL(string: 
     "http://maps.apple.com:/?saddr=\(YOUR_SOURCE_LATITUDE),\(YOUR_SOURCE_LONGITUDE)&daddr=\(YOUR_DESTINATION_LATITUDE),\(YOUR_DESTINATION_LONGITUDE)&dirflg=d")!) 

    } 
+1

nie pozwalają otworzyć określoną trasą po prostu dodaje dwie lokalizacje – arnoapp

Powiązane problemy