2016-09-08 2 views
-1

이것은 일반적으로 더 신속한 질문이지만 도움이된다면이 모든 사용자를 Firebase에 저장하려고합니다.가장 가까운 사용자 목록을 거리별로 정렬하는 방법은 무엇입니까?

Firebase 호출에 대해 보수적 인 시도를하고 있습니다. 거리별로 정렬 된 가장 가까운 100 명의 사용자를 표시하려는 경우 가장 좋은 옵션이 무엇인지 궁금합니다.

저는 CoreLocation으로 반지름으로 거리를 계산하는 것에 익숙하지만 백엔드를 생각하고 있습니다. Firebase에서 모든 사용자를 끌어 와서 사전에 쳐서 좌표 키로 정렬하는 가장 좋은 방법은 무엇입니까? 나는 대안을보기 위해 실패하고있다.

고마워요!

+0

를 해결하는 데 도움이되기를 바랍니다, 가장 좋은 방법은 https://github.com/firebase/geofire ([Geofire] 사용하는 것입니다 -objc). 이 라이브러리는 지리적 해시를 사용하여 서버의 거리 별 효율적 쿼리를 허용합니다. –

답변

0

답변이 약간 이상합니다. 하지만 여기에 vospolzovatsya 값으로 정렬 할 수 있습니다.

거리에서 각 사용자의 레이블을 넣고 firevase를 쓸 수 있습니다. 응용 프로그램이나 사이트를 실행할 때 태그를 업데이트 할 수 있습니다. 당신은 단지 테이블 거리에 추가해야합니다.

예제가 명확 해집니다.

enter image description here

쿼리는이

const ref = firebase.database().ref('Distance');

ref.orderByChild('distanceFrend').limitToFirst(100).on('value', snap => { .... } 

당신은 거리상으로 분류 목록을 얻을 것이다처럼 보일 것입니다. 처음에는 가장 가까운.

내가 예를 들어 당신이 중포 기지 데이터베이스에서 사용자를 저장하는 경우 문제를

+0

웹 요청 예입니다. SWIFT에 익숙하지 않다 –

+0

정말 고마워! 따라서 기본적으로 각 사용자에 대해 거리 객체를 제안하고 모든 사용자가 자신이 속한 사용자 계층과의 거리를 유지해야합니다. –

+0

예라고 말할 수 있습니다. 구현할 기회가 충분합니다. 그것은 결국 무엇을 얻고 자하는지에 달려 있습니다. 여기에서 중요한 것은 사용자로부터 거리 형태로 데이터를 전송하는 것입니다. –