OSStatus 错误 -50 是啥意思?
Posted
技术标签:
【中文标题】OSStatus 错误 -50 是啥意思?【英文标题】:What does OSStatus Error -50 mean?OSStatus 错误 -50 是什么意思? 【发布时间】:2014-11-03 16:04:10 【问题描述】:我正在 ios 上编写一些钥匙串代码。当我尝试在钥匙串中插入项目时,出现错误 -50。
OSStatus 错误 -50 是什么意思?
【问题讨论】:
errSecParam = -50, /* One or more parameters passed to a function where not valid. */
在哪里可以找到完整的错误列表?谢谢!
Security.framework/SecBase.h
或这里 developer.apple.com/library/ios/documentation/Security/…,在 Keychain Services 下
【参考方案1】:
是errSecParam
,表示你的一个或多个参数有误。
这里: https://developer.apple.com/library/ios/documentation/Security/Reference/keychainservices/index.html#//apple_ref/c/econst/errSecParam
【讨论】:
【参考方案2】:如果您要向钥匙串添加密码,请确保将其作为数据而不是字符串传递,否则您将收到 OSStatus 错误 -50。
static func savePassword(password: Data, account: String) throws -> OSStatus
let query = [
kSecClass as String: kSecClassGenericPassword as String,
kSecAttrAccount as String: account,
kSecValueData as String: password
] as [String: Any]
SecItemDelete(query as CFDictionary)
return SecItemAdd(query as CFDictionary, nil)
【讨论】:
SecItemDelete(query as CFDictionary) 解决了我的问题的行,谢谢:)【参考方案3】:错误-50
是errSecParam
,这意味着您在函数中传递的至少一个参数是/无效的。
这可能是由于类型差异,或者可能是无效值。
See this page on the Apple site 在errSecParam
上阅读 Apple 的官方文档。
【讨论】:
以上是关于OSStatus 错误 -50 是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章
OSStatus 错误 1685348671 AVAudioPlayer
ITLibrary:操作无法完成。 (OSStatus 错误 7011。)
Xcode 10 不会创建开发者签名证书,得到 OSStatus 错误 -2147416032