首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >指定访问组时出现KeychainItemWrapper错误

指定访问组时出现KeychainItemWrapper错误
EN

Stack Overflow用户
提问于 2014-10-09 19:55:07
回答 1查看 1.7K关注 0票数 3

相当一段时间以来,我一直在使用ARC版本的KeychainItemWrapper成功地阅读和编写私有密钥链项目。

我现在正在努力将我的iOS应用程序转换成一个共享访问组,这样我的两个应用程序就可以使用相同的应用程序前缀来访问密钥链项。在“功能”部分,我添加了密钥链组"MYAPPPREFIX.MYSHAREDACCESSNAME“

我使用这些行将我的变量写入密钥链组:

代码语言:javascript
运行
复制
keychainItemWrapper = [[KeychainItemWrapper alloc] initWithIdentifier:key accessGroup:@"MYAPPPREFIX.MYSHAREDACCESSNAME"];
[keychainItemWrapper setObject:value forKey:(__bridge id)(kSecAttrAccount)]; // store the new value in the keychain

如果accessGroup被指定为nil,那么它工作得很好。但是,如果指定访问组,调试器日志中会出现以下错误:

断言在-KeychainItemWrapper writeToKeychain中失败,./KeychainItemWrapper.m:329终止应用程序,由于非正常异常'NSInternalInconsistencyException',原因:‘无法添加密钥链项目’

由此产生的OSStatus错误代码是-25243,我无法跟踪它以获得更多信息。

为了写入共享访问组,我可能还需要做些什么吗?

EN

回答 1

Stack Overflow用户

发布于 2014-10-10 21:50:33

如果它对其他人有帮助的话,我就能识别出问题所在。在Xcode的“功能”中,我需要省略应用程序id前缀。但是,在识别访问组时,需要包括应用程序id前缀。

因此,在功能方面,我将一个组命名为“myAccessGroup”。

在我的代码中,我包括前缀如下:

代码语言:javascript
运行
复制
keychainItemWrapper = [[KeychainItemWrapper alloc] initWithIdentifier:key accessGroup:@"xxxxxxxx.myAccessGroup"];
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26286897

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档