Лучшим вариантом для iOS 4.x является applicationDidEnterBackground:
Действительно, согласно документам Apple, приложение в фоновом режиме может быть остановлено в любое время из-за нехватки памяти.Таким образом, предложение делает постоянную любую информацию о состоянии в момент входа приложения в фоновый режим.
Выдержка из протокола UIApplicationDelegate :
Вы должны использовать этометод освобождения общих ресурсов, сохранения пользовательских данных, аннулирования таймеров и сохранения достаточного количества информации о состоянии приложения, чтобы восстановить ваше текущее состояние в случае, если оно будет прекращено позднее.Вам также следует отключить обновления пользовательского интерфейса вашего приложения и избегать использования некоторых типов общих системных ресурсов (таких как база данных контактов пользователя).Также крайне важно избегать использования OpenGL ES в фоновом режиме.
Ваша реализация этого метода имеет приблизительно пять секунд для выполнения любых задач и возврата.Если вам нужно дополнительное время ...