我在我的项目中使用Firebase实时数据库,目前,我不使用任何身份验证方法,这意味着Firebase上的所有登录方法都被禁用,并且没有定义规则Firebase数据库也是:
{
"rules": {
".read": true,
".write": true
}
}
我正在尝试实施协作文本编辑应用,以便同时有多个用户可能正在更新相同的文本。所以在我的应用程序中,我观察Firebase发送的相应文本编辑事件,因此可以保持所有用户处理相同内容的文本同步。
我的问题是,当应用程序收到文本编辑事件时,我怎么知道谁(哪个用户)在Firebase上进行了更改(我刚收到的事件是否是文本更改的结果)通过User1或User2等)。因为目前,我知道有人对文本进行了更改(因为我收到了一个事件),但我不知道是谁做的。有帮助吗?感谢
任何一般性指导都会有所帮助。
答案 0 :(得分:0)
如果您想识别用户而不要求他们登录,那么您正在寻找Firebase's anonymous authentication。在Objective-C中,这很简单:
[[FIRAuth auth]
signInAnonymouslyWithCompletion:^(FIRUser *_Nullable user, NSError *_Nullable error) {
// ...
}];
然后您可以通过以下方式识别用户:
[[[FIRAuth auth].currentUser].uid];