-1

如何使用Google反向地理編碼正確,清晰地標識地址(例如法國巴黎)的座標?某處的地點標有「地方」類型,某處是「administrative_area_level_2」,某處是「administrative_area_level_3」等。是否有任何方法可以清楚地確定城鎮或村莊,或者該人是否在建成區之外?Google反向地理編碼問題

例子: 我們發送的請求: https://maps.googleapis.com/maps/api/geocode/json?sensor=true&language=en&latlng=55.6844952,37.6118719 查找城市和在大多數情況下,得到如下:

"address_components" : [ 
     { 
      "long_name" : "Moscow", 
      "short_name" : "Moscow", 
      "types" : [ "locality", "political" ] 
     }, 
… 
}, 
    "place_id" : "...", 
    "types" : [ "locality" ] 
}, 

但有時 我們發送的請求: https://maps.googleapis.com/maps/api/geocode/json?sensor=true&language=en&latlng=60.123062,64.78818 查找城市,並得到:

"address_components" : [ 
     { 
      "long_name" : " gorod Uray", 
      "short_name" : "g. Uray", 
      "types" : [ "administrative_area_level_2", "political" ] 
     }, 
... 
}, 
    "place_id" : "...", 
    "types" : [ "administrative_area_level_2" ] 
}, 

該應用如何確定在一種情況下城市是「地方」,而在其他情況下,城市是「administrative_area_level_2」等

+0

林不知道我理解你的問題。對於地理定位,我已經使用[Geocoder gem](https://github.com/alexreisner/geocoder)取得了成功,我會推薦。 – srm

回答

0

在你的榜樣,莫斯科是一個資本和政治中心,這就是爲什麼它被標記爲政治; Gorod Uray不是一個城市,而是一個更大的二級行政區域,所以它被標記爲行政區域。

This Type list來自Google Maps API的位置參考文檔清楚地說明了在searchResult中構成GeocoderAddressComponent對象的每種類型的用法。