有没有一种方法可以捕获哪些调用的值事件侦听器

时间:2019-08-28 04:42:21

标签: android firebase kotlin event-listener

Firebase数据可以由单个值事件侦听器或广义值事件侦听器获取。就我而言,我不能使用单值事件监听器。问题是即使我不想听者也会被触发。让我解释一下情况:

我的数据库中有许多来自特定位置的用户。 firebase数据库包含用户(作为根用户)和个人资料详细信息,以及其位置(在纬度和经度中)作为子节点。

现在,作为一个简单案例,假设某个用户想要将紧急情况下的SOS发送给位于一定范围内的其他用户。为此,我在将SOS发送给所有其他用户的用户之间执行一些距离计算,并列出存在于指定范围内的其他用户的列表。然后,将通知发送给所有这些用户。在这里,我使用一个值事件侦听器来获取其他用户的位置详细信息,以便与当前用户的位置进行比较。到目前为止,我的代码按预期运行。值事件侦听器已附加到用户节点,因为我必须遍历用户详细信息。

用户更改个人资料详细信息时会出现问题。它调用了value事件侦听器,并且代码对发送SOS的用户的位置获取了一些垃圾值。结果,尽管没有发送实际的SOS,但仍在发送通知。

希望这可以解释问题。我在旅行和从手机输入密码时无法提供代码。如有必要,可以在几个小时内提供代码。

0 个答案:

没有答案