2011-10-11 66 views
7

我现在使用SFHFKeychainUtils一段时间了。在我上次更新AppStore时,它突然“忘记”了我的用户密码。意思是,当为相同的用户名和服务呼叫getPasswordForUsername时,它现在不返回结果。我不打印错误变量,所以我不知道它是否返回任何内容,我只知道它不返回密码/任何字符串。 我试过在我的设备/其他调试设备上通过安装旧版本然后安装新版本来重现问题,但它没有发生!工作得很好。 我知道这有点含糊,但我真的不明白它来自哪里,所以我无法提供更多信息。 任何人有任何想法可能会导致此?你有没有在这方面可能会失踪的最佳做法?或者只是关于如何调试此问题的提示?SFHFKeychainUtils“忘记”我的用户密码

非常感谢!

+0

,有人吗?它可能与以前的版本是为ios3编译的事实有关,并且在迁移到ios4时,我添加了entitlement.plist改变了一些内容? – Eran

+0

可能我有相关问题: 我在iPhone上安装了一个应用程序(v1.0),它是从App Store下载的。当用户登录时,我正在使用SFHFKeychainUtils存储用户名/密码。 现在,我编译v1.1并在同一设备上运行它,并且我的应用程序没有看到存储在钥匙串中的任何信息。 看起来像从应用商店下载的版本和我编译的版本都有自己独立的钥匙串。我的用户会遇到同样的事情吗? – romaonthego

+1

它必须以某种方式与捆绑种子ID相关。正如Apple的文档中所述:“注意:在iPhone上,Keychain权利取决于用于签署应用程序的供应配置文件。确保始终在不同版本的应用程序中使用相同的供应配置文件。”请参阅:http://developer.apple.com/library/ios/#documentation/Security/Conceptual/keychainServConcepts/02concepts/concepts.html#//apple_ref/doc/uid/TP30000897-CH204-TP9但我仍然无法设法了解为什么它不适合我。我没有更改捆绑种子ID AFAIK – Eran

回答

1

你可以在你的权利已经改变了您的访问组:

Entitlements view in Xcode 4

(注:模糊出来的部分是你的捆绑种子ID [或应,反正])