在iOS上无需身份验证即可跟踪付费内容

时间:2018-12-24 18:52:23

标签: ios swift firebase firebase-authentication

我想在应用程序中提供一些付费内容,但是我不希望用户经历身份验证过程。我希望他进入该应用程序并直接能够购买一些内容,并记住该用户如果以后再回来或稍后卸载/重新安装该应用程序,则已经购买了该内容。 (就像现在商店中的大多数冥想应用一样)

是否可以使用 Firebase Services ,如果可以,跟踪匿名用户付费内容的好方法是什么?

2 个答案:

答案 0 :(得分:1)

Anonymous用户 IS 是没有详细信息(姓名,电子邮件,密码等)的用户。它具有唯一的用户ID

所以。您可以使用User's唯一ID将任何内容保存到数据库。但要记住。每个应用程序都可以在其沙箱目录中执行操作。它也具有唯一的ID,并在卸载应用程序时重置。

赞美。如果故意删除了该应用程序,Firebase将不会记住该匿名用户ID。

文档对此进行了很好的说明:

  

您可以使用Firebase身份验证来创建和使用临时   使用Firebase进行身份验证的匿名帐户。这些临时的   匿名帐户可用于允许尚未签名的用户   您的应用可以使用受安全规则保护的数据。如果   匿名用户决定注册您的应用,您<< strong>您可以链接其应用   登录凭据到匿名帐户,以便它们可以继续   以便在以后的会话中使用其受保护的数据。

了解更多: Authenticate with Firebase Anonymously on iOS

答案 1 :(得分:1)

从理论上讲,您可以将其设置为将用户重定向到TextField页面的位置,要求他/她输入各种“密码”和“ PIN”。然后可以将这个“密码”和“ PIN”作为匿名用户存储到SQL Server数据库中。重新下载该应用程序时,您可能会看到一个专门用于购买恢复的页面,所有用户所需要做的就是输入此“密码”和“ PIN”,在他们正确输入两者后,它将购买返回到他们的帐户。

要警惕的东西:

-人们可能使用相同的密码,这就是为什么我建议使用PIN作为两步身份验证的原因。还请记住,您的应用将需要在上传之前针对服务器测试密码,以确保密码尚不存在,并告知用户在这种情况下无法使用密码。 -这与具有用户名和密码的帐户本质上是相同的……唯一的区别是您不会收集有关它们的其他信息(例如电子邮件和生日等),从而使其更加匿名。 -这是一个非常罕见的问题案例,我知道这是一个糟糕的答案,但是老实说,除非您的应用严重依赖于此,否则这不是实现的最佳方法。