KeychainItemWrapper '无法添加钥匙串项目。

KeychainItemWrapper 'Couldn't add the Keychain Item.'

我想将访问令牌存储到钥匙串。但是我得到了错误:Couldn't add the Keychain Item.'

我查看了 Whosebug 上的一些帖子,例如: Storing email in keychain impossible (KeychainItemWrapper)

我的代码:

let a = NSKeyedArchiver.archivedData(withRootObject: "980a872c17a075367357e25e88c1c0476417092a")
let keyWrapper = KeychainItemWrapper.init(identifier: "23123123", accessGroup: nil)
keyWrapper?.setObject(a, forKey: kSecValueData)
  1. 我试过添加这个

    keyWrapper?.setObject(kSecAttrAccessible, forKey: kSecAttrAccessible)
    
  2. kSecValueData改为kSecAttrGeneric

我是 运行 Xcode 8 岁 swift 3.0。任何提示谢谢!

编辑===========================

Viruss mca's answer 开启 Share keychain entitlement 对我只管用一次 : (

我最近遇到了 Xcode 8 的这个问题。

解决问题您必须添加 "Share keychain entitlement" 到 Xcode 功能。

有很多用户遇到过这个问题。

参考: https://forums.developer.apple.com/thread/60617

好的,纠结了很久,我发现我的苹果账户在我更新到Xcode8之前就已经过期了。我通过删除我的帐户然后重新登录来解决它。并且仅适用于设备而非模拟器。