Я работаю над обновлением приложения iPhone с незначительным изменением его конфигурации по умолчанию. Прошло некоторое время с тех пор, как я его построил последним, и поэтому я обновил Xcode до 4.2 и включил поддержку iOS 5 в последних сборках.
Когда я иду на тестирование на устройстве, я получаю следующую ошибку утверждения:
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.'
Я использую реализацию класса KeychainItemWrapper
из Apple проекта GenericKeychain. Стоит отметить, что эта ошибка появляется только на устройстве, а не в Simulator (и я знаю различия в ограничениях группы доступа между платформами, но обычно я думал, что это вызвало проблемы с Simulator, а не с фактическим оборудованием).
Зачем мне возвращать эту ошибку? Я не затронул ничего, относящееся к связанным с цепочкой связям частям приложения; он сохраняет и извлекает данные точно так же, как и раньше.