我正在使用Locksmith钥匙串包装器。
方法签名是这样的:
public static func saveData(data: [String: AnyObject], forUserAccount userAccount: String, inService service: String = LocksmithDefaultService) throws {...}
我正在使用它:
//Line A—breakpoint
do{
try Locksmith.saveData(["password" : password], forUserAccount: "tech")
}
catch {
// some code}
在我的断点处,如果
po Locksmith.saveData(["password" : password], forUserAccount: "tech")
我会得到
Locksmith.LocksmithError.Duplicate
Locksmith.LocksmithError.Duplicate
我很困惑为什么我会收到错误两次。假设错误本身就是说Duplicate。我更困惑。我不确定这个问题是因为Locksmith还是因为我对try
& throw
或其他东西在Swift中有效。
PS:我认为,如果任何有足够代表的人,他们会为Locksmith
创建一个SO标签,这是一个好主意,因为它有点像钥匙串的流行包装。有1900人参加了此次演出,我相信还有更多人正在使用它。
答案 0 :(得分:0)
我现在正在运行Xcode 8和Swift3,而Xcode 8在这个时候看起来有些小问题。
我几乎可以肯定这是一个错误。为什么呢?
fatal error: unexpectedly found nil while unwrapping an Optional value
2次......