NSSetUncaughtExceptionHandler 的作用是捕获异常并将其转储到某个地方,以便我们可以找出应用程序崩溃的原因和异常情况。
在 Objective C 中,它可以按预期捕获异常。这里是参考资料。
但是,在 Swift 中,当异常发生时,它无法捕获。以下是我在
有人能告诉我在这里做错了什么吗?
在 Objective C 中,它可以按预期捕获异常。这里是参考资料。
但是,在 Swift 中,当异常发生时,它无法捕获。以下是我在
didFinishLaunchingWithOptions
中使用的代码。 NSSetUncaughtExceptionHandler { exception in
NSUserDefaults.standardUserDefaults().setObject("Exception Details Are \n\nExceptionName--> \(exception.name) \nReason -->\(exception.reason!)\n\(exception.description)", forKey: "Exception")
NSUserDefaults.standardUserDefaults().setObject("Call Stack Symbols:\(exception.callStackSymbols)", forKey: "ExceptionCallstack")
NSUserDefaults.standardUserDefaults().synchronize()
}
以下是我用来使应用程序崩溃的代码片段
var c=["a","b","c"]
var d=c[4]
有人能告诉我在这里做错了什么吗?
Array
越界访问,或解包一个为nil
的Optional
)。 - Martin R