gpt4 book ai didi

ios - iOS Swift 中的异常管理问题

转载 作者:行者123 更新时间:2023-11-30 13:58:08 25 4
gpt4 key购买 nike

你好

我想向您询问一个使用 Swift 2.0 语言在 IOS 代码中进行异常管理的问题。

我有以下代码:

alert.addAction(UIAlertAction(title: "Ok", style: .Default, handler: { (action: UIAlertAction!) in
// Remove save value in Keychain
let MyKeychainWrapper = KeychainWrapper()
MyKeychainWrapper.setValue("Account", forKey: kSecAttrAccount as String)
MyKeychainWrapper.setValue("password", forKey: kSecValueData as String)
let loginViewController = self.storyboard?.instantiateViewControllerWithIdentifier("loginViewController") as! LoginViewController

self.presentViewController(loginViewController, animated: true, completion: nil)
}))

问题是我在此代码中遇到以下异常:

2015-10-26 08:04:49.464 RapidSentryMaster[1907:25789] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<KeychainWrapper 0x7fe783922820> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key v_Data.'

我认为异常是由于没有找到之前保存的任何 KeyChain,所以我尝试以与我以前在 android 或其他语言中使用 try..catch 相同的方式管理异常

alert.addAction(UIAlertAction(title: "Ok", style: .Default, handler: { (action: UIAlertAction!) in
// Remove save value in Keychain
do{
let MyKeychainWrapper = KeychainWrapper()
try MyKeychainWrapper.setValue("Account", forKey: kSecAttrAccount as String)
try MyKeychainWrapper.setValue("password", forKey: kSecValueData as String)
}catch{

}
let loginViewController = self.storyboard?.instantiateViewControllerWithIdentifier("loginViewController") as! LoginViewController
self.presentViewController(loginViewController, animated: true, completion: nil)
}))

这样做我遇到了以下问题:

try 表达式中不会调用抛出函数catch block 无法访问...

我想问一下,处理这样的异常的正确方法是什么?

提前致谢

最佳答案

查看 KeychainWrapper.h 文件。没有方法 setValue:forKey:
相反,您应该使用 mySetObject:forKey:
如果你想尝试this教程。
干杯。

关于ios - iOS Swift 中的异常管理问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33345726/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com