我正在更新iPhone application,並對其默認配置稍作更改。不過,自從我創建它以來,已經有一段時間了,所以我已經將Xcode升級到了4.2,並且在最新版本中包含了iOS 5支持。iOS Keychain SecItemAdd返回-25243
當我去測試設備上,我得到以下斷言錯誤:
2011-11-02 20:57:18.869 RoseBandwidth[903:707] Tried to add item, got result: -25243
2011-11-02 20:57:18.870 RoseBandwidth[903:707] *** Assertion failure in -[KeychainItemWrapper writeToKeychain], /Users/tim/code/RoseBandwidth/Classes/KeychainItemWrapper.m:312
2011-11-02 20:57:18.872 RoseBandwidth[903:707] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Couldn't add the Keychain Item.'
我使用的是蘋果的GenericKeychain project的KeychainItemWrapper
類的實現。值得注意的是,這個錯誤只出現在設備上,而不是在模擬器中(我意識到平臺之間的訪問組限制差異,但通常我認爲在模擬器上導致了問題,而不是實際的硬件)。
爲什麼我會收到此錯誤?我沒有觸及任何與應用程序中與鑰匙鏈相關的部分;它存儲和檢索數據就像以前一樣。
如果可以的話,我會多次提醒你 - 這個回答完全是神奇的。事實證明,我在途中丟失了我的權利文件,因此重新啓用它們(並在一段時間內使用配置文件)解決了此問題。謝謝! – Tim