TL / DR::我们在应用中使用Firebase,并且希望在用户的不同iOS设备之间同步Firebase凭据。为此,我们正在考虑将凭据保存在iCloud中。这似乎有点不寻常,因为大多数应用程序都将iCloud或Firebase用作其无服务器后端。 这是可行的方法吗?有什么特别的缺点吗?
长话:
我们正在设计一个Firebase应用程序,该应用程序会在用户登录后立即在Firebase中透明地创建一个用户帐户。用户不会注意到已登录。我们只是生成一个随机邮件地址,例如0fc7b18ea7e @ my-app。 com以及随机密码,然后将这些凭据存储在用户的设备上(我们将其称为“匿名帐户”)。
稍后,用户可以选择在GUI中创建一个帐户,这时我们只需将邮件地址和密码更改为用户输入的凭据即可。这样,用户的帐户将成为非匿名帐户。
现在,我们想在用户设备之间同步凭据。假设用户拥有一个iPad和一个iPhone,然后他们第一次在iPhone上启动该应用。为他们创建了一个匿名帐户,他们开始使用该应用程序。后来,他们在iPad上启动了该应用程序。即使他们未指定任何凭据,我们也希望他们使用与iPhone上相同的帐户登录。
我们为什么要使用此auth设计?对于我们的应用程序而言,至关重要的是,用户只需打开应用程序即可立即启动,而无需注册任何内容。此外,使用多个设备的用户使用同一帐户也至关重要。对于匿名用户,这仅在凭据以某种方式在设备之间共享时才有效。