谷歌地图API的方向返回结果为零利用斯威夫特

问题描述:

我的应用谷歌地图方向 API绘制任意两个位置之间的路线(由来 - 方向的位置)的用户引脚它。谷歌地图API的方向返回结果为零利用斯威夫特

我用这样的方式API:

https://maps.googleapis.com/maps/api/directions/json?origin=(fromLat),(fromLng)&destination=(toLat),(toLng)&mode=(travelMode)&departure_time=now&alternatives=true&language=(lang

的问题是有时候响应返回零个结果,就像这样:

{ 
    "geocoded_waypoints": [ 
    {}, 
    {} 
    ], 

    "routes": [], 

    "status": "ZERO_RESULTS" 
} 

我搜索了很多,但没有任何有用的结果。

任何人都遇到过这个问题?

可能是这个问题,因为我用的是免费的API?

我将感谢任何帮助。

谢谢。

+0

如果它只失败了几次,是不是有可能实际上没有路线?你不能搜索那些不存在的东西。 – BridgeTheGap

如果不存在路径,则返回相同的值。

请参阅此链接:Path Information

希望这有助于!

UPDATE:

尽量隐蔽经纬度到地址并且将它传递的网址,它会解决这个问题。 CLGeocoder可能会帮助你做同样的事情。

+0

没有,当我尝试在Google地图网站相同的位置上,它给我的路线 – Rawan

+0

可以传递一些信息,比如哪一个环节你正在访问 –

+0

这是链接: HTTPS://maps.googleapis。com/maps/api/directions/json?origin = 18.6548634,33.097382&destination = 36.7547311,30.3368614&mode = Driving&language = en – Rawan

这是因为目的地的经纬度错误。另外路径不适用于请求的旅行模式。

+0

不幸的是,它不是 – Rawan

+0

改变旅行模式。 –

+0

我尝试了所有模式:S – Rawan

试试这个谷歌API:

https://maps.google.com/maps?saddr=%@,%@&daddr=%@,%@

通纬度,经度以上API。你会得到结果。

+0

我在哪里通过lats,lngs?在saddr,daddr – Rawan

+0

saddr是开始点,daddr是目标点。 [NSString的stringWithFormat:@ “https://maps.google.com/maps?saddr=%f,%f&daddr=%f,%f”,self.startinglatitude,self.startinglongitude,self.destinationlatitude,self.destinationlongitude] –

+0

[NSString的stringWithFormat:@ “https://maps.google.com/maps?saddr=%f,%f&daddr=%f,%f”,self.startinglatitude,self.startinglongitude,self.destinationlatitude,self.destinationlongitude] –