Я разработал приложение, в котором я запускаю таймер обратного отсчета. Таймер запускает метод каждую секунду. Однако, когда телефон находится в спящем режиме, таймер замедляется или даже выключается.
Я думаю, что мне нужно обновить переменные путем вычисления временных интервалов с использованием NSDate. Кто-нибудь знает, как это сделать?
Кстати, наш клиент прислал следующий отзыв:
Кажется, проблема с таймером
тот факт, что код предполагает, что
сообщения таймера
доставлено ровно за одну секунду, но
нет. Когда приложение работает, но
телефон находится в режиме ожидания, он использует
таймер для обновления таймера обратного отсчета.
Но таймер приходит медленнее
чем одна секунда, поэтому обратный отсчет
таймер выключен Приложение должно быть
переработан, чтобы всегда обновлять
таймер обратного отсчета на основе текущего
время, а не обратный отсчет на основе
сами сообщения таймера. (В других
слова, когда одна секунда сообщения
приходит, всегда предполагайте, что
дополнительное время прошло и
рассчитать оставшееся время
вычитая из целевого времени. это
это то, что происходит, когда вы перезапустите
приложение - оно вычисляет целевое время
и текущее время вычитает один
от другого, и обновляет
экранный таймер. Ну вот как это
всегда должен делать это.)
Если кто-то понимает, что именно нам нужно, пожалуйста, скажите мне.