【发布时间】:2010-01-05 22:18:29
【问题描述】:
是否可以通过sdk获取用户的信息,比如apple ID?我正在编写一个应用程序,它需要一个与应用程序用户关联的帐户。我想允许用户在多个设备上拥有一个帐户,因此无法使用设备 ID。我认为最简单的方法是使用应用用户的苹果 ID 作为该帐户的 ID,因此不需要他们创建另一个帐户。
【问题讨论】:
标签: iphone
是否可以通过sdk获取用户的信息,比如apple ID?我正在编写一个应用程序,它需要一个与应用程序用户关联的帐户。我想允许用户在多个设备上拥有一个帐户,因此无法使用设备 ID。我认为最简单的方法是使用应用用户的苹果 ID 作为该帐户的 ID,因此不需要他们创建另一个帐户。
【问题讨论】:
标签: iphone
不,这是一个隐私问题,就像他们的电话号码一样。
他们仍然必须在您的网站上创建一个帐户,因为您无权访问 Apple 的数据库,而且出于显而易见的原因,没有人愿意向您提供他们的 iTunes 密码。
您真正节省的只是他们输入用户名,因为他们仍然必须给您一个密码。记住这些数据非常容易,以便将来运行您的应用程序。研究使用 NSUserDefaults。我建议不要使用 UDID,并为用户提供保存密码的选项。这样,如果手机丢失,任何找到它的人都无法自动访问所有者的帐户。如果用户选择自动登录,您可以轻松保存密码并在应用加载时将其与用户名一起发送。
【讨论】:
这是不可能的(AFAIK)。您只能检索设备的 UDID。
我过去所做的是将我这边的一个帐户与用户那边的多个 UDID 关联起来,所以当他们在各种设备上安装应用程序时,他们可以只使用一个帐户,它会自动链接该设备。不理想,但我还没有看到更好的解决方案。
【讨论】:
如果是游戏,可以使用游戏中心账号来识别用户
【讨论】:
代替设备的UDID,你可以试试 [UIDevice currentDevice].identifierForVendor 它链接到设备和应用安装。
【讨论】:
我将用户名和加密密码存储在一个文件中,该文件存储在用户的应用程序文件空间中。当应用程序启动时,如果它找到这个文件,它会尝试登录而不询问用户。将密码(即使是加密的)存储在文件系统中似乎确实不安全,但该应用程序并不是人们容易尝试窃取密码的应用程序。
【讨论】: