使用Android Studio,在尝试将特定用户的位置与其他所有用户进行比较时,需要做些什么。例如,如果有1000个并发用户,并且我想找到与任何给定用户最接近的用户(或最远),那么需要进行哪种计算?
如果每个用户的位置都保存到数据库,我从哪里开始?是否有必要将一个位置与1000个(或更多)用户进行比较以找到最接近的位置,或者更有意义的是进行某种类型的截止(即仅比较50公里以内的用户)。
看起来势不可挡,我是android的新手,所以我不确定从哪里开始。 Parse.com和Pubnub正在这个项目中使用。
答案 0 :(得分:2)
我将在这里为您提供geohashing教程,该教程将指导您如何构建基于相对位置连接用户的实时应用。 请注意,此示例使用JavaScript编写,而不是Java / Android。但是,您仍然可以使用此设计模式来确定接近度。
App Geo位置:https://www.pubnub.com/blog/2014-05-07-geohashing-chat-by-proximity/
还有一个简短的视频,讨论了Geohasing概念。
您也可以添加link: Parse reference guide。如果需要,还需要Parse Connector SDK。