2014-11-16 7 views
0

Я пытаюсь выяснить какую-то логику в делетете приложения iOS. Я хочу выполнить некоторые действия в applicationDidEnterBackground и отменить их в applicationWillEnterForeground, как это было предложено. Но я хочу убедиться, что, если приложение не прекращено, applicationWillEnterForeground всегда вызывается после applicationDidEnterBackground. Я знаю, что это обычно так, но я знаю, что всегда есть случаи, связанные с ошибками (авторизация, другие прерывания, такие как телефонные звонки, уведомления). Я думаю, что я проверил большинство случаев и обнаружил, что applicationWillEnterForeground всегда будет вызываться для встречного применения applicationDidEnterBackground, но я хочу посмотреть, есть ли какие-то случаи, которые мне не хватает, если это не так.Является ли applicationWillEnterForeground всегда вызываемым после applicationDidEnterBackground?

ответ

0

Установите логическое значение по умолчанию для пользователей при вводе фона. Затем, когда вы повторно вводите передний план, проверьте значение этого логического элемента, чтобы определить, правильно ли он был установлен. В любом случае, всегда возвращайте значение Boolean в false при возврате на передний план.

+0

Спасибо, я понимаю, как это проверить в конкретном случае, но я пытаюсь выяснить, есть ли какие-либо случаи, о которых я НЕ думал (и, следовательно, не могу проверить) – SAHM

+0

Если вы ограничены использованием приложения делегат, тогда единственным другим индикатором будет метод applicationWillTerminate:. Если вы можете включить crashlytics в ваше приложение, то вы можете реализовать их методы делегирования, чтобы определить, когда он был перезапущен после сбоя. Надеюсь это поможет. –

+0

Спасибо .. Я не совсем уверен, что вы говорите. Нет крушения. Я просто пытаюсь быть основательным в своем планировании и понимании того, что происходит в моем приложении. – SAHM