Есть ли какой-либо метод в appDelegate, который вызывается при сбое приложения?

Мне нужно сохранить некоторые данные в моем приложении, когда приложение завершается и даже если оно сработает. Я знаю, что applicationWillTerminate вызывается, когда приложение завершается, но я не уверен, какой метод вызывается при сбое приложения.
Может ли кто-нибудь помочь мне здесь?

Ответ 1

Ну, вы можете добавить свой собственный обработчик исключений, чтобы поймать ошибку.

Сначала вам нужно определить метод исключения:

void uncaughtExceptionHandler(NSException *exception) {
    // You code here, you app will already be unload so you can only see what went wrong.
}

Затем скажите приложению, чтобы использовать обработчик исключений:

- (void)applicationDidFinishLaunching:(UIApplication *)application { 
    NSSetUncaughtExceptionHandler(&uncaughtExceptionHandler);
    // The rest if you code  ....
}

Невозможно сделать приложение для сохранения данных при сбое, поскольку экономия может стать причиной сбоя!

Ответ 2

Нет, вы не можете узнать, когда приложение сработает.