2013-08-13 1 views
0

В нашем приложении мы должны автоматически выйти из системы, если он не вошел в систему в течение недели.Максимальное время Intervel для NSTimer

Каков наилучший способ запланировать его? Я использовал NSTimer с интервалом времени (24 * 7 * 60 * 60), будет ли он работать ?.

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

+0

Я уверен, что установка таймера на неделю будет технически работать, за исключением того, что она будет выпущена и, таким образом, не будет срабатывать, когда приложение будет закрыто. – Jsdodgers

ответ

3

NSTimer приостанавливается, когда приложение находится в фоновом режиме. У вас есть все шансы, что ваш пользователь запустит другие приложения, поэтому ваше приложение перейдет на задний план.

Я хотел бы решить эту проблему, как этот

  • Когда пользователь Логин, я беру текущее время (NSDate) и сохранить его в NSUserDefault с ключом, как «lastLoginTime».
  • Когда пользователь запускает/возобновляет приложение, я проверяю текущее время с ранее сохраненным временем. Если разница превышает 1 неделю, I выйдите из системы.
  • Если разница меньше 1 слабая, я обновляю значение NSUserDefault с текущим временем.