谷歌地图api无法找到位置

时间:2017-08-29 11:12:12

标签: c# google-maps

我使用谷歌地图API编写了一个C#程序,发现对于某些Lat& 位置较长,API无法找到地址(当google earth能够访问时) 找到它...)。 下面是一个演示它的代码:

============================
...
using Google.Api.Maps.Service.Geocoding;
...
var request = new GeocodingRequest();
request.Sensor = "false";
request.Language = "iw";
request.LatitudeLongitude = "33.00166,35.60089";
var response = GeocodingService.GetResponse(request);

然后: response.Status是:ServiceResponseStatus.Ok

但是使用与以下位置相同的代码:

request.LatitudeLongitude = "33.14640,35.72904";
response.Status became:  ServiceResponseStatus.ZeroResults

然而,谷歌地球找到这个位置的地址,所以为什么谷歌 map API无法找到它?

请指教, 很多tnkx, 戈兰

1 个答案:

答案 0 :(得分:0)

您有ServiceResponseStatus.ZeroResults响应,因为您在争议区域尝试了反向地理编码(33.14640,35.72904)。

https://google-developers.appspot.com/maps/documentation/utils/geocoder/#q%3D33.1464%252C35.72904

不幸的是,谷歌地图反向地理编码在争议地区无效。这是一个已知问题,已在Google问题跟踪器中报告为issue 35826813。看起来Google正在解决此问题,因为问题的状态为已接受。目前Google Maps API尚无解决方法。

我可以建议主张此问题以表达您的兴趣并接收来自Google的进一步更新。

更新

好消息。截至2019年1月,谷歌在有争议的地区解决了ZERO_RESULTS的问题。

您可以看到现在它们返回结果,但国家/地区名称未显示在回复中。这与他们在前向地理编码器中的方法一致。争议地区没有国名。