원본 좌표와 대상 좌표 사이의 경로를 가져 오려고합니다.iOS) google 방향에서 두 좌표로가는 길 없음 api
나는 stackoverflow을 참조했다.
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
}
}
그러나 결과적으로 response.data은 다음과 같습니다 :
그래서 내 코드는 다음과 같습니다이 문제에 대한
{
"status" : "ZERO_RESULTS",
"available_travel_modes" :
[
"TRANSIT"
],
"geocoded_waypoints" : [
{},
{}],"routes" : []}
, 나는 그것을 검색하고이 때 발생 될 수 있음을 발견 좌표를 주소로 변환 할 수 없습니다.
하지만 두 좌표가 'CLGeocoder'(reverseGeocodeLocation)에 의해 올바른 주소로 변환되었는지 확인했습니다.
마지막으로, 'maps.google.com'에서 동일한 좌표가 지정되고 경로가 나에게 표시되는지 확인했습니다.
이 문제를 어떻게 해결할 수 있습니까? 운전에
&mode=transit
에 다른 원산지, 목적지와 경로를받을 수 있나요? –다른 쌍 (new_origin, new_destination)을 테스트했지만 그 결과가 동일하므로 요청한 정확한 URL을 업데이트합니다. – LKM