繁体   English   中英

在iOS崩溃应用上调用的方法

[英]Method called on crash iOS app

问题是我想在我的应用程序终止之前立即将一些东西发送到钥匙串(是的,我的意思是终止-在后台不存在)。

我很确定AppDelegate方法:

- (void)applicationWillTerminate:(UIApplication *)application

在类似情况下可以正常工作。 但是现在,从未调用过此方法。

我正在使用Xcode 5并为iOS 7.0开发

我不确定崩溃时触发了applicationWillTerminate: :。

我在didFinishLaunchingWithOptions:期间致电:

NSSetUncaughtExceptionHandler(&uncaughtExceptionHandler);

然后,在您的appDelegate中,添加:

void uncaughtExceptionHandler(NSException *exception) {
    NSLog(@"CRASH: %@", exception);
    NSLog(@"Stack Trace: %@", [exception callStackSymbols]);
    // Internal error reporting
}

也许您可以通过此方法将某些内容保存到钥匙串中。

对于Swift 4

didFinishLaunchingWithOptions()修改此代码:

NSSetUncaughtExceptionHandler { exception in
            print("Error Handling: ", exception)
            print("Error Handling callStackSymbols: ", exception.callStackSymbols)
        }

每当您的应用崩溃时,都会调用此块。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM