我有一个由Firebase驱动的Android应用程序。这个应用程序就像一个分账应用程序,说派对是由一个用户A组织的,他邀请了用户B,C参加聚会,而B,C都为派对买了一些东西。现在,他们想列出他们在应用程序中购买的所有东西。
这个应用程序的每个特定用户在其实时数据库中都有3个子节点。在这3个节点中,其中一个节点(例如用户A)中的数据可由其他一些用户(例如用户B、C)查看+编辑;这2个用户已经被用户A添加到他的列表中,他们可以将共享的DB信息添加到他的列表中。
问题1:如何邀请用户B,C到view+update,用户A创建的数据?如果应用程序已经安装在B的手机中呢?如果C的手机中没有安装应用程序呢?
问题2:如何为每个用户实现DB结构,同时考虑应用程序的安全性?
注:我正在使用谷歌登录和电话号码验证为auth。
发布于 2020-05-02 10:43:05
根据你的问题,我做了一些数据结构:

回答问题1::在数据结构中,我为用户添加了子节点:a-被邀请的,它的用户Id是向用户发送邀请的:A。
因此,在用户帐户中添加一个活动布局,它具有显示系统所有用户的功能,然后通过单击特定用户发送邀请的功能。在后端,这是通过接受被邀请的用户UserId并在其邀请的节点中进行弥补来完成的。
根据以下数据结构的示例,User:F在您的系统中,它邀请用户:A。
回答问题2:根据数据结构,用户:a邀请用户:B,User:C,和User:D. 用户:B和用户:C已经接受邀请&用户:d不接受邀请。
现在来看看用户的数据节点:a,User:B和User:C已经更新了数据。
您可以添加这样的功能:如果用户的invitationstatus被接受,那么他们就可以更新或查看用户的数据节点:
不过,如果你有任何疑问,那就让我知道,如果你对答案感到满意,那就把它向上划一下,勾上绿色标记。谢谢
https://stackoverflow.com/questions/61556215
复制相似问题