Android 如何有效地发现用户';s当前位置是否在lat long点附近?

Android 如何有效地发现用户';s当前位置是否在lat long点附近?,android,performance,google-maps,firebase,Android,Performance,Google Maps,Firebase,我正在考虑构建一个安卓应用程序,人们可以在不同位置的嵌入式谷歌地图上放置图钉。用户掉落pin的条件是,pin不得位于先前掉落的任何其他pin的100m半径内。我正在考虑使用firebase作为后端 查找用户位置和地图上每个pin之间的距离并不是一种有效的方法,因为可能会有数千个甚至更多的pin丢失 我该如何解决这个问题?将是一个很好的匹配 GeoFire是一组用于JavaScript、Objective-C、, 和Java,允许您基于 他们的地理位置。GeoFire的核心就是存储 具有字符串键的

我正在考虑构建一个安卓应用程序,人们可以在不同位置的嵌入式谷歌地图上放置图钉。用户掉落pin的条件是,pin不得位于先前掉落的任何其他pin的100m半径内。我正在考虑使用firebase作为后端

查找用户位置和地图上每个pin之间的距离并不是一种有效的方法,因为可能会有数千个甚至更多的pin丢失

我该如何解决这个问题?

将是一个很好的匹配

GeoFire是一组用于JavaScript、Objective-C、, 和Java,允许您基于 他们的地理位置。GeoFire的核心就是存储 具有字符串键的位置。然而,它的主要好处是 仅检索给定地理区域内的那些密钥的可能性 面积-所有在实时


您可以将所有
LatLng
点存储在
HashSet
HashMap
中,然后使用
LatLngBounds
类的
contains()
方法查看某个区域是否包含点

您可以在此处阅读更多信息:

查看