Привет, я прочитал несколько вопросов на SO о том, что applicationWillTerminate вызывается, а не вызывается.
Я хотел бы обобщить то, что я понял, поскольку есть несколько постов, которые говорят по-разному.
Для IOS (без многозадачности) он вызывается всегда при нажатии кнопки home.
Для IOS 4 и выше
а. не вызывается при нажатии кнопки домой (когда приложение переходит в фоновый режим)
б. он вызывается при закрытии приложения из многозадачной док-станции, и если у приложения внезапный флаг завершения в файле info.plist отключен, в противном случае он не вызывается. (Я установил «Приложение должно получать события App Died», и даже тогда при закрытии приложения из многозадачной док-станции функция завершения не вызывалась)
Исходя из этого у меня была пара вопросов
Это хорошая практика, чтобы установить, что приложение должно получать флаг событий App Died? (Я установил «Приложение должно получать события App Died», и даже после закрытия приложения из многозадачной док-станции функция завершения не вызывалась)
или
Является ли регистрация в "UIApplicationWillTerminateNotification" лучше, чем настройка info.plist?
В основном мне нужно выполнять какую-то работу только тогда, когда приложение завершается, а НЕ когда оно переходит в фоновый режим.
или
РЕДАКТИРОВАТЬ (1):
Когда приложение завершается, в приложение отправляется следующее. Как мне его поймать?
Программа получила сигнал: «SIGKILL».
РЕДАКТИРОВАТЬ (2):
Обратите внимание: он не вызывается в IOS 4 и выше при удалении из дока многозадачности. Вы можете подумать, что это так. Но в моем случае это не так.
Я спрашиваю, знает ли кто-нибудь почему? Есть ли что-то еще, что я пропускаю.
Также обратите внимание, что я установил «Приложение должно получать события App Died», и даже тогда оно не вызывается.
РЕДАКТИРОВАТЬ (3):
Ответ на следующий вопрос также не сработал.
applicationWillTerminate не вызывается
Кто-нибудь сталкивался с такой же проблемой, как я?