我正在开发一组需要用户使用密码登录的应用程序。每个帐户都适用于所有应用程序,因此用户只需注册一次。
当用户A下载应用程序App1时,他必须注册,因为他从未在任何这些应用程序中注册。然后他下载应用程序App2,我希望能够检测到他已经使用过应用程序App1。我知道如何做到这一点(UIApplication canOpenURL:消息)。但真正令人惊讶的是使用他在第一个应用程序中使用的相同凭据自动登录他(或者至少建议他可以这样做)。
我一直认为我们无法在不同的应用程序之间共享数据,但我已经看到Evernote和Evernote Hello应用程序可以这样做。在以前的iOS版本中,我们可以使用uniqueIdentifier值,但现在已弃用。我想到的另一个解决方案是使用push notifications token,但我们不能完全确定所有应用程序都是一样的,对吧?或者我们可以使用设备电话号码(如果它是iphone),但我也认为Apple doesn't like us to use the user's phone number。
这样做的最佳方法是什么?非常感谢你!
答案 0 :(得分:3)
您可以使用共享钥匙串存储用户名,密码等,并在应用之间共享。
见http://useyourloaf.com/blog/2010/04/03/keychain-group-access.html 和苹果示例https://developer.apple.com/library/ios/#samplecode/GenericKeychain/Introduction/Intro.html
这是最好的,因为, 1)苹果负责安全。 2)即使删除应用程序后它仍然存在。 3)它跨越备份
答案 1 :(得分:2)
如果您需要在iOS应用之间共享数据,则可以使用UIPasteboard
。这个blog article记录了一种方法。