一次登录iOS - 最有效的方式?

san*_*nza 1 iphone objective-c ios

我正在寻找为我的iPhone应用程序进行一次性登录的最佳方法.使用iOS 5.1.1 SDK但针对iOS 4.1进行部署.

其目的是获取生成的ID:如果存在ID,那么我不再需要登录,ID将以XML格式返回.

我的应用程序是当前基于Web的服务的扩展,它涉及位置更新的异步HTTP POST,ID为标识符,并检查返回的XML是否有任何错误.该ID不会过期.它是一个单一的视图应用程序,因为它只需要一个启动/停止按钮.

Web服务的用户名永远不会改变,因此我只想获取一次ID,如果一个人由于服务的性质和提供无信息的应用程序而破解并获取id,则没有任何好处或安全风险在用户身上.我想要的过程如下.

  1. 申请推出.
  2. 我们有存储的ID吗?(是/否)
  3. 如果是,请进入申请.
  4. 如果没有当前用户名/密码屏幕来获取ID.
  5. 在输入用户名/密码时,密码被加密,发送到服务器进行验证,如果是,则返回并存储id.

用户名/密码是两个输入和一个登录按钮.

最好的方法是什么?我真的不知道这里有什么方向.

skr*_*ram 5

我建议做的是使用iOS的Keychain来存储用户的ID.你永远不会太安全,可以在这里找到示例用法GenericKeychain或者许多易于使用的包装器来实现这一点.

如果你真的不关心安全性,那么NSUserDefaults可以用来存储.

此外,我建议使用iCloud Document存储使所有用户设备的ID保持不变.您可以参考主题以获取更多信息.

希望我建议的所有内容都能帮助你解决问题!

更新:对于发现此答案有用的任何其他人.如上所述,如果你去Keychain路线@sandmanza,一定要包括Security.framework.