Rufen Maps für Richtungen aus in Ihrem app - iOS5 iOS6
Hier ist ein seltsames problem: Meine app soll in der Lage sein zu nennen, die eingebaute Karten in iOS (5.1 und 6). Stellt sich heraus, dass es Prima funktioniert unter iOS6 aber leider nicht unter iOS5.1. Die maps in iOS6 aufgerufen wird und die Anweisungen von saddr zu daddr wird verfolgt, aber wenn ich in iOS5 die Karten-app aufgerufen wird, aber nur ein pin wird auf den daddr. Aus unerfindlichen Gründen den ursprünglichen Koordinaten (saddr) werden nicht angezeigt und keine Richtung verfolgt wird.
Hier ist mein code:
addr = [NSString stringWithFormat: @"maps://saddr=%f,%f&daddr=%f,%f", newLocation.coordinate.latitude, newLocation.coordinate.longitude, oldLatitude, oldLongitude];
NSURL *url = [NSURL URLWithString:addr];
[[UIApplication sharedApplication] openURL:url];
Ich habe versucht, ändern Sie die URL zu "http://maps.google.com/something" aber es ruft Safari anstelle des eingebauten Karten-app. Ich habe bemerkt, dass die Variablen übergeben werden korrekt an die URL.
Irgendwelche Ideen?
Vielen Dank im Voraus!
- Praktisch identische Frage diese ältere, mit der Ausnahme, dass die start-Adresse ist die aktuelle Lage in der anderen Frage (nicht wirklich ändern, das problem viel).
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich hatte ein ähnliches problem und ich hatte Sie einige bedingte OS-code, um mit der Tatsache auseinandersetzen, dass die Google Maps-Anwendung wurde entfernt. Von der neuen MKMapItem Referenz
Um zu Fuß Richtungen:
MKLaunchOptionsDirectionsModeWalking
stattMKLaunchOptionsDirectionsModeDriving
&dirflg=w
auf die url.Ich denke, es ist besser, verwenden Sie die openInMapsWithLaunchOptions in iOS6, weil es gibt Ihnen die vollständige Kontrolle über die Verwendung der maps-Anwendung reagieren.
Current+Location
diskutiert in meiner Antwort diese sehr ähnliche ältere Frage, und die Kommentare zu reagieren.Können Sie
MKPlacemark
undMKMapItem
starten die Karten-app mit einer Koordinate und einen Titel auf der map pin:Beachten Sie, dass Sie brauchen, um link gegen
AddressBook.framework
und auch#import <AddressBook/AddressBook.h>
irgendwo in Ihrem code zu nutzenkABPersonAddressStreetKey
konstant.