2016-03-02 2 views
1

Я разрабатываю приложение в Swift 2.0, которое использует HTTP-запросы. И я передаю значение контрольной суммы для запросов. Эта контрольная сумма генерируется веб-сервером после входа пользователя в систему. Значение контрольной суммы обновляется после того, как оно не используется в течение 3 часов. Из-за изменения контрольной суммы я столкнулся с проблемой. Проблема в том, что срок действия сессии истек, и пользователю необходимо снова войти в систему, чтобы использовать приложение.Как проверить, находится ли приложение на переднем плане, но не доступно для определенного времени - iOS

Когда приложение входит в фон (сведено к минимуму) и повторно открывается, я повторно генерирую контрольную сумму в методе applicationDidBecomeActive. Я использую applicationDidEnterBackground, чтобы записать время. Если указанное время составляет более 3 часов, я повторно генерирую значение контрольной суммы. И в этом случае он отлично работает.

Проблема возникает, когда приложение находится на переднем плане и не доступно (приложение идеально) более 3 часов.

Где я должен сгенерировать контрольную сумму в этом случае? Существуют ли для этого методы AppDelegate?

ответ

1

Не существует способа, чтобы просмотреть жизненный цикл, который называется, если приложение находится в режиме переднего плана в течение самого длительного периода времени, не перемещаясь по другой странице. поэтому таймер установки может решить вашу проблему и запросить пользователя с предупреждением «Session Expired», и когда пользователь коснется его, просто удалите веб-API и обновите интерфейс.

Спасибо.

+0

Спасибо за ваше предложение .. Я попробую это и дам вам знать результат .. –

Смежные вопросы