如何知道哪个用户生成了Firebase活动?

时间:2017-04-20 18:07:40

标签: ios objective-c firebase firebase-realtime-database firebase-authentication

我在我的项目中使用Firebase实时数据库,目前,我使用任何身份验证方法,这意味着Firebase上的所有登录方法都被禁用,并且没有定义规则Firebase数据库也是:

{
  "rules": {
    ".read": true,
    ".write": true
  }
}

我正在尝试实施协作文本编辑应用,以便同时有多个用户可能正在更新相同的文本。所以在我的应用程序中,我观察Firebase发送的相应文本编辑事件,因此可以保持所有用户处理相同内容的文本同步。

我的问题是,当应用程序收到文本编辑事件时,我怎么知道谁(哪个用户)在Firebase上进行了更改(我刚收到的事件是否是文本更改的结果)通过User1或User2等)。因为目前,我知道有人对文本进行了更改(因为我收到了一个事件),但我不知道是谁做的。有帮助吗?感谢

任何一般性指导都会有所帮助。

1 个答案:

答案 0 :(得分:0)

如果您想识别用户而不要求他们登录,那么您正在寻找Firebase's anonymous authentication。在Objective-C中,这很简单:

[[FIRAuth auth]
 signInAnonymouslyWithCompletion:^(FIRUser *_Nullable user, NSError *_Nullable error) {
   // ...
 }];

然后您可以通过以下方式识别用户:

[[[FIRAuth auth].currentUser].uid];