OGeek|极客世界-中国程序员成长平台

标题: ios - 如何跨多个 ios 应用程序自动登录? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 22:38
标题: ios - 如何跨多个 ios 应用程序自动登录?

我正在实现在 iOS 应用中自动登录用户的功能。这对于单个应用程序来说很容易,因为我们可以使用 NSUserDefaults 保留用户名,而使用 System Keychain 保留密码。

现在,我想跨多个应用执行此操作。据我了解,我们需要一个唯一的设备标识符,我们可以将其传递给服务器,然后使用它来激活同一设备上多个应用程序的自动登录。现在,由于 Apple 现在禁止使用 UDID,我正在考虑使用供应商标识符,这当然需要我相应地设置捆绑 ID。这是最好的方法吗?或者有没有更好更有效的标准方法?

另外,是否可以在不同设备之间进行自动登录?就像例如如果我在一台 iOS 设备上登录,然后在另一台设备上打开应用程序,我应该会自动登录。



Best Answer-推荐答案


要实现多个 iOS 应用之间的登录,您可以在它们中使用相同的 App ID 前缀。它会起作用,因为他们将共享钥匙串(keychain)数据。在这里您可以找到更多详细信息: https://developer.apple.com/library/ios/technotes/tn2311/_index.html

这里是相关问题:Keychain group access to share data between my existing applications

关于不同设备之间的自动登录。我使用加密的 iCloud key 值存储来存储设备之间的登录名和密码。它有效,但不太好。问题是您第一次在新设备上启动应用程序时,需要一些时间将数据从 iCloud 同步到本地存储。这意味着您第一次尝试登录时可能需要等待一些未定义的时间。在可能的情况下,它大约是 20 秒。渴望在一个好的应用程序中登录 当然这需要用户使用相同的 Apple ID 登录 iCloud。

ASAIK 没有合适的方法来实现从多个设备自动登录。 Apple 建议只在用户的每台新设备上要求登录。

关于ios - 如何跨多个 ios 应用程序自动登录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24033047/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4