In short, unless you have UIApplicationExitsOnSusp
applicationWillTerminate
As
For applications that support background execution, this method isgenerally not called when the user quits the application becausethe application simply moves to the background in that case.However, this method
may becalled in situations where the application is running in thebackground (not suspended) and the system needs to terminate it forsome reason
(Emphasis mine.)
If you need to do something before the app exits you need to do itinapplicationDidEnterBackg
.There is no way to catch SIGKILL.