【问题标题】:Discarding a message, before it gets displayed to the user?在向用户显示之前丢弃消息?
【发布时间】:2015-03-15 05:15:54
【问题描述】:

我正在尝试开发一个 Android Messenger 应用程序,其中用户 1 向使用该应用程序的每个人发送消息,该消息包含用户 1 的 GPS 位置。是否可以确定用户 1 和用户 2 之间的距离以及基于此选择显示或丢弃消息。我该怎么做? Cloud 您是否指出了我可能遗漏的注意事项?

我认为可能的另一种方法是定期使用每个用户的 GPS 位置更新服务器,然后让服务器决定谁收到消息,但我不想使用这种方法,因为这会涉及隐私问题。没有人会希望服务器整天跟踪他们的行踪。有其他解决方案吗?

【问题讨论】:

标签: android gps location


【解决方案1】:

您可以使用半正弦公式来确定两个位置之间的距离。这是一个提供各种语言的公式的链接。

http://www.movable-type.co.uk/scripts/latlong.html

执行此操作的一种方法是将服务器上电话的最新位置存储在数据库中。然后,您可以查询数据库(使用存储过程),通过设置半径来确定您最近的邻居(电话)是谁。例如,显示 500 米内的所有电话。

这是一个如何做到这一点的示例:

http://www.movable-type.co.uk/scripts/latlong-db.html

【讨论】:

  • 感谢您的回答。我希望找到一种方法,我不必在服务器上存储手机的位置,因为这意味着我的服务器会定期跟踪我的应用程序用户。我正在寻找一种解决方案,让每个应用程序用户都收到消息,然后接收电话自己决定它是否在范围内,然后决定是提示用户还是在提示之前丢弃消息。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-11
  • 1970-01-01
相关资源
最近更新 更多