android - 如何只显示一次 Firebase 数据?

标签 android database firebase firebase-realtime-database

我正在开发一个使用 Firebase 实时数据库的 Android 应用程序。 该应用程序与功能有限的社交媒体应用程序非常相似。 该应用程序将向用户显示包含文本数据的帖子。 我遇到了两个问题,我在分页的帮助下解决了第一个问题,但无法解决第二个问题。 问题是如何确定帖子是否已被其他用户看到,然后不再显示。 像其他社交媒体平台一样 例如Quora,每次打开应用程序时Quora都会显示不同的答案。 我是否需要重新映射我的数据才能获得此功能? 我的用户对象和帖子对象看起来像这样。

   User{ 
      Name;
      Id;
      Post;
   }

Post {
    dateCreated;
    data;
    userId;
}

我的数据库树结构看起来像这样

       ROOT
      /    \
   POST    Users

我将帖子的副本保留在 ROOT 的子节点(即 POST)中以及每个用户节点中以获取用户发布的帖子。 PS:抱歉英语不好。

最佳答案

如果你愿意

1- 显示还没有浏览量的帖子,您可以过滤帖子,例如 num_reads < 3 . num_reads每次用户看到帖子时都会增加。

2- 显示用户自己尚未阅读的要使用的帖子。在这种情况下,最好创建一个集合 user_post_read这将是多对多的(即链接用户以发布阅读)。获取当前用户在 user_post_read 中没有条目的所有帖子

关于android - 如何只显示一次 Firebase 数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61708630/

相关文章:

android - 当手机离线时,GCM 存储消息列表或仅存储最后一条消息,就像 APNS 一样?

node.js - 如何在 PC 上本地测试 Cloud Functions for Firebase

angular - 将默认的 Firebase 配置注入(inject) Angular 应用程序

java - 在android中通过java代码重新排列RelativeLayout子级

java - Android 从 ArrayList<List<String>> 中删除项目

java - 如何从firebase数据库检索数据并将所有数据传递给sms

php - 过期的链接

database - 需要有关 Oracle 10g Express Edition 的帮助

php - 使用 PHP 连接到数据库

node.js - Firebase RefBuilder.onOperation<T> 方法是什么?