检测哪个城市用户在

时间:2016-03-09 03:46:35

标签: ios swift cllocationmanager cllocationdistance cllocationcoordinate2d

一旦我们请求坐标。我们怎么知道这个位置在纽约或洛杉矶?或者都不是?

我们如何计算它?

我不知道该怎么做。请帮忙

P.S。:反向地理编码会将坐标转换为名称。但这不是我的问题。我问我们怎么知道这个位置在城市内?是通过比较反向地理编码生成的字符串,导致它听起来“容易出错”给我

2 个答案:

答案 0 :(得分:0)

您正在寻找的是反向地理编码。查看CLGeocoder类和reverseGeocodeLocation:completionHandler:方法。

答案 1 :(得分:0)

我认为您不想使用Apple的地理编码因为它不可靠。您可以使用Google API将坐标转换为位置。

let urlPath: String = "http://maps.googleapis.com/maps/api/geocode/json?latlng=\(self.latitude),\(self.longitude)&sensor=true_or_false
let recievedLocation : NSMutableData! = self.getJSON(urlPath)
let recievedDictonary = self.parseJSON(recievedLocation)
let returnedPlaces : NSArray = recievedDictonary["results"] as! NSArray

用您的坐标替换URL中的纬度和经度。 returnedPlaces将有一个字典数组。这将采用JSON格式,您需要进行一些格式化。使用this link了解返回数据的方式。如果您在格式化收到的数据方面需要帮助,请与我们联系。