나는 신속한 Google Maps API를 사용하고 있습니다. 내가 어느 마을에 있는지 감지 할 수 있다면 궁금했다. 예를 들어 뉴욕 시티에 있다면 나는 GPS 좌표를 기반으로 동쪽 마을에 있는지 감지합니다. API가이를 수행 할 수있는 방법이 있을까? 아니면 좌표에 대한 비교를 심각하게 실행하는 것이 가장 최선의 방법인가? 만약 그들이 모두 현재 사용자를 만난다면 그들은이 마을에 있다고 가정한다.현재 어느 마을에 있는지 감지하기.
답변
당신은 당신이, 경도 현재 위치의 위도를 얻을 수 있습니까 좌표
let geocoder: CLGeocoder = CLGeocoder()
let location: CLLocation = // your location here
geocoder.reverseGeocodeLocation(location, completionHandler: { (placemarks: [CLPlacemark]?, error: Error?) -> (Void) in
if let placemarks = placemarks, !placemarks.isEmpty
{
if let city = placemarks[0].locality, let sublocality = placemarks[0].subLocality
{
print("You're in \(sublocality) at \(city)")
}
}
else
{
print("No info related to your location")
}
})
이것은 올바른 생각이지만 내 요구에 부합하지 않습니다. 실제로 뉴욕 맨해튼의 이스트 빌리지, 트라이 베카 (Tribeca, Lower Manhattan)에 있는지 알고 싶으면 맨해튼에있는 것을 알 수 있습니다. sublocality의 이러한 유형은 아무것도 처리 할 수없는 것 같습니다 :/ – mocode9
CLPlacemark 속성을 살펴보고 다른 속성을 테스트하십시오. – Adolfo
있습니다. 어느 누구도 당신에게 마을에 대해서 말하지 않았습니다. 당신이 얻을 수있는 가장 가까운 것은 "Manhattan"입니다. 그것은 잘못이 아니지만 제가 원하는 것만 큼 구체적이지는 않습니다. – mocode9
에 따라 정보를 얻을 수 CoreLocation 프레임 워크에서 CLGeocoder를 사용할 수 있습니까? – iDeveloper
예 현재 경도와 위도가 있습니다 – mocode9
현재 위치의 위도, 경도를 현재 주소/면적으로 쉽게 변환 할 수있는 것보다 큽니다. – iDeveloper