2017-09-19 29 views
0

나는 앱을 사용할 때 사용자가 자신의 위치 (위도와 경도)를 업데이트하는 Firebase 데이터베이스를 가지고 있습니다. 동시에 사용자는 같은 방법으로 자신의 위치를 ​​udating 다른 사용자의 모든 위치를 볼 수 있습니다.DB에서 가장 가까운 위치 만 필터링하십시오.

사용자로부터 X 거리에있는 사용자의 모든 위치를 표시하려고합니다. 거기에 alghoritm 또는 뭔가 필터링 할 수 있습니까? 현재 사용자는 미국에있는 경우 모든 위치 이벤트를 볼 수 있으며 프랑스에서 활동중인 사용자의 위치를 ​​볼 수 있습니다. 나는 당신이 CLLocation 개체의 distance를 사용하여 원하는 거리에있는 사람을 인쇄 할 수 MapKit와 CoreLocation

답변

1

을 사용하고

. 이 같은

뭔가 :

let userLocation = CLLocation(latitude: userLat, longitude: userLong) 
let anotherLocation = CLLocation(latitude: anotherLat, longitude: anotherLong) 
let distance = anotherLocation.distance(from: userLocation) 

if distance < desiredDistance { 
    // within range 
} 
+0

은 좋은 해결책처럼 보인다. 감사합니다 – OMGImOut

+0

Np, 도와 드리겠습니다! –