我想知道用户使用Google的当前位置。我知道如何使用mapKit获取用户的海拔高度和经度,但我不知道如何将其翻译为位置或地址(街道名称,城市,国家/地区)。我做了一些搜索,我发现只是使用NSURL来访问访问Google商家信息的指定链接。但是,可用的是列出用户附近的地方。那我怎么知道用户的当前位置? 注意:我没有使用Apple的地图,因为我的国家/地区不包括在内,而谷歌则更支持它。
答案 0 :(得分:2)
您可以使用反向地理编码服务。
以下是文档:
https://developers.google.com/maps/documentation/geocoding/?hl=en#ReverseGeocoding
请求示例(JSON):
http://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&sensor=false
在iOS上获取JSON数据:
Not getting json response in google query of longitude and latitude in iOS?
要解析iOS中的JSON对象,这个答案可能对您有用:
How to parse specific googlemaps API webservices JSON repsonse
答案 1 :(得分:0)
没有理由使用Web API,iOS SDK已使用GMSGeocoder
类处理此问题。以下是Swift中如何将用户当前位置转换为地址的示例:
let geocoder = GMSGeocoder()
geocoder.reverseGeocodeCoordinate(currentLocation.coordinate) { (response, error) -> Void in
print("Response: \(response.firstResult())")
print("Error: \(error)")
}