如何使用用户的位置来显示他们附近或半径范围内的信息?

Posted

技术标签:

【中文标题】如何使用用户的位置来显示他们附近或半径范围内的信息?【英文标题】:How do I use a user's location to display information that is near them or in a radius within? 【发布时间】:2020-07-06 19:47:11 【问题描述】:

我正在构建一个让人们请求某些东西的应用,因此用户应该只接收靠近他们或在特定半径内的请求。如何在颤振上实现这一点?

【问题讨论】:

【参考方案1】:

您需要获得有关满足请求的人员的坐标的实时数据。当用户发出请求时,获取用户的当前坐标,并根据该坐标过滤根据指定半径完成请求的人/人的坐标

有一个公式可以计算两个坐标之间的距离

Distance, d = 3963.0 * arccos[(sin(lat1) * sin(lat2)) + cos(lat1) * cos(lat2) * cos(long2 – long1)]

但要使用公式,您需要将纬度和经度值从十进制度转换为弧度。为此,将两个点的经度和纬度值除以 180/pi。 pi 的值为 22/7。 180/pi 的值约为 57.29577951。如果我们想以英里为单位计算两地之间的距离,请使用值 3,即 963,即地球的半径。如果我们想以公里为单位计算两地之间的距离,请使用值 6,378.8,即地球的半径。 你会得到大概的距离。

你可以使用类似谷歌地图的api,this is the link for more info

这是google map package link,您可以在 Flutter 应用中使用它来达到相同的目的。

【讨论】:

以上是关于如何使用用户的位置来显示他们附近或半径范围内的信息?的主要内容,如果未能解决你的问题,请参考以下文章

显示用户在PHP中当前位置的10公里半径范围内的用户

JavaRedis通过中心经纬度与半径获取范围内的结果集(类似附近的人)

MySQL:多个纬度和经度的附近位置

获取半径内的附近街道地址

如何到达特定范围内的附近位置?

根据半径向用户显示附近的位置