关于模拟器写入钥匙串的问题

2019-11-30  本文已影响0人  Michale_Zuo

 最近项目里增加了一个需求,我们需要用到keychain,但是在模拟器上生成SecKeyRef对象时

  CFTypeRef persistKey = nil;
    OSStatus status = SecItemAdd((__bridge CFDictionaryRef)"you key", &persistKey);
    if (persistKey != nil){
        CFRelease(persistKey);
    }
    if ((status != noErr) && (status != errSecDuplicateItem)) {
        return nil;
    }
    

这里的status报错了,debug发现 报错是-34018errSecMissingEntitlement的错误,google了一下,这是缺少entitlement的错误,需要在添加相应的权限。具体方法是
project-> signing & capabilites -> 左上角的+号,搜索keychain sharing,添加相应的权限
如果还不能解决问题请查看这个链接的其他方案

上一篇 下一篇

猜你喜欢

热点阅读