为什么GMSGeocoder.reverseGeocodeCoordinate为单个坐标返回两个街道号码?

时间:2017-04-11 17:27:18

标签: google-maps-sdk-ios

使用GMSGeocoder.reverseGeocodeCoordinate(firstResult或results)返回GMSAddress,其addressline1类似于“1400-1402 Thimbleberry Drive”。我正在使用适用于iOS版的Google Maps SDK:2.2.30010.0。

我怎样才能获得“1400 ThimbleBerry Drive”?批量大约是。 7500平方英尺。理想情况下,我想要正确的地址 - 而不是范围。

以前我的应用程序依赖它来返回一个地址,它运行正常。

谢谢!

1 个答案:

答案 0 :(得分:0)

Google地理编码器返回的位置可能有不同的类型:

  • " ROOFTOP":一个精确的地理编码,我们的位置信息精确到街道地址精度。
  • " RANGE_INTERPOLATED":在两个精确点(例如交叉点)之间插值的近似值(通常在道路上)。当屋顶地理编码不可用于街道地址时,通常会返回插值结果。
  • " GEOMETRIC_CENTER":结果的几何中心,例如折线(例如,街道)或多边形(区域)。
  • "近似"表示返回的结果是近似值。

每当Google Geocoding API无法返回ROOFTOP地理编码时,它都可能会返回RANGE_INTERPOLATED结果。因此,您应该在响应中预期这两种类型。

在反向地理编码Web服务中,有一个字段指定location_type,您可以从中验证获得的结果实际上是ROOFTOP。

iOS SDK不会公开此字段。如果您想为iOS SDK提供相同功能,可以按照link

添加功能请求