Ich versuche, eine Route zwischen der Ursprungskoordinate und der Zielkoordinate zu bekommen.iOS) Keine Route von zwei Koordinaten aus Google Richtungen api
Ich referenzierte stackoverflow.
So Mein Code unten:
let url = "https://maps.googleapis.com/maps/api/directions/json?origin=37.496375,126.9546903&destination=37.48121,126.9505233&mode=walking&key=MY_KEY"
Alamofire.request(url).responseJSON
{ response in
print(response.request) // original URL request
print(response.response) // HTTP URL response
print(response.data) // server data
print(response.result) // result of response serialization
let json = JSON(data: response.data!)
let routes = json["routes"].arrayValue
for route in routes
{
let routeOverviewPolyline = route["overview_polyline"].dictionary
let points = routeOverviewPolyline?["points"]?.stringValue
let path = GMSPath.init(fromEncodedPath: points!)
let polyline = GMSPolyline.init(path: path)
polyline.map = self.mapView
}
}
Aber als Ergebnis response.data unter:
{
"status" : "ZERO_RESULTS",
"available_travel_modes" :
[
"TRANSIT"
],
"geocoded_waypoints" : [
{},
{}],"routes" : []}
Über diese Frage suchte ich es und fand, dass es verursacht werden kann, wenn Die Koordinate kann nicht in die Adresse konvertiert werden.
Aber ich habe überprüft, dass beide Koordinaten durch 'CLGeocoder' (reverseGeocodeLocation) in die richtige Adresse konvertiert werden.
Schließlich habe ich bei 'maps.google.com' überprüft, dass die gleichen Koordinaten adressiert sind und die Route mir angezeigt wird.
Wie kann ich dieses Problem lösen?
Ändern Haben Sie Route mit anderem Ursprung, Ziel kommen? –
Ich testete verschiedene Paare (new_origin, new_destination), aber das Ergebnis ist das gleiche, ich werde die genaue URL aktualisieren, die ich angefordert habe. – LKM