首先,我熟悉 Geocoder 和 Places API。出于这个原因,我不问如何通过使用这些来获得原始格式的整个地址。我正在寻找某个地方的正式地址。由于可以使用 Geocoder API 获取的地点没有组织,因此我无法通过调用同一个地点单元到达两个不同 LatLng 值的省份。例如,我可以通过调用 .adminArea() 获取与我当前位置相对应的城市,但我 friend 的位置可能会作为他的引擎盖从 .adminArea() 返回。因此,尽管此对象的地址包含城市名称,但我无法从 Geocoder 对象中获取城市字符串。
如果我调用相关方法,是否有另一个 API 可以为我提供正确的街道/地区/城市?或者有没有办法解析 Geocoder 对象的地址,以便我可以获得最干净的地址组件?
最佳答案
你可以试试Bing Maps API .它本身不是 Android API,但您可以向 RESTful API 发出请求并获得非常标准化的结果。
这是一个示例结果JSON(下面只显示了它的主要部分):
"address":{
"addressLine":"1 Microsoft Way",
"adminDistrict":"WA",
"adminDistrict2":"King Co.",
"countryRegion":"United States",
"formattedAddress":"1 Microsoft Way, Redmond, WA 98052",
"locality":"Redmond",
"postalCode":"98052"
}
Locality
始终是 City,而 AdminDistrict
始终是 State。
PS:我在我的一个项目中使用它,他们的配额非常公平。
关于android - 如何以组织良好的格式获取地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32261727/