我尝试了以下代码,但始终收到“指定的属性不存在”错误。 kSecValueRef已检查,但不为空
let attributes: [String: Any] = [kSecClass as String : kSecClassCertificate,
kSecValueRef as String : certificateRef!,
kSecAttrApplicationTag as String : tag]
let osStatus = SecItemAdd(attributes as CFDictionary, nil)
答案 0 :(得分:1)
您可以找到描述kSecClassCertificate
类型here的可用属性的资源。
您应将kSecAttrApplicationTag
更改为kSecAttrLabel
,这将为您解决问题。应用程序标签不是证书的有效参数。
p.s。 Apple开发人员文档页面上有一个文档描述了每个类的每个属性,或者您也可以查看source code。