Как сказать, было ли приложение для iPhone запущено по фону или нет

StackOverflow https://stackoverflow.com/questions/3243693

Вопрос

Мое приложение использует nsuserdefaults для хранения некоторых значений, чтобы он мог восстановить их на обновлении приложения или если указывается.Фон.Есть ли способ, которым я могу сохранить NsuserDefaults в любое время в приложении разгружать.Кроме того, метод ViewDidload имел ту же проблему, он не вызывает с фона.Что такое путь вокруг этого?

P.S.До сих пор только данные моего приложения должны сохранить, является Int для на экране.

Обновление: UiApplicationDiodenterBackgroundingNotification работает отлично с вашими предложениями!

Это было полезно?

Решение

Вы не можете сохранить данные прямо до того, как он в конечном итоге убит, но вы можете сохранить состояние «на всякий случай» в вашем ApplicationDiDidenterBackgrobground: Delage.

Там есть также applicationdiDbecomeActive:, но нет причин загружать ваши сохранения данных оттуда, поскольку когда он вызывается из приложения, который был на заднем плане, данные будут сохранены в любом случае.

Другие советы

Вы не можете сказать, было ли ваше приложение запущено с фона или нет, по крайней мере, как он в данный момент настроен, поскольку ваш делегат приложения получит ту же последовательность событий, если он запущен с Spramboard.

Как говорят, как Joost, вы должны сохранить все, что вам нужно восстановить состояние внутри приложенияDidentiDenterBackground Callback;По сути, вы должны предположить, что это последнее сообщение, которое ваше приложение получит до того, как он будет убит беспощадно убить жнецов злого процесса.

Вы должны проверить WWDC 2010 сеанс сессии , в частности, сессия 105- Принимая многозадачность на ОС iPhone, часть 1 для тщательного объяснения.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top