Выполните простое задание в фоновом режиме после долгого времени на iOS 4+ - PullRequest
0 голосов
/ 19 октября 2010

Позвольте мне перефразировать, чтобы было понятнее:

Как отключить "будильник" через 20 минут после того, как мое приложение ушло в фоновый режим?


Старый вопрос:

Как вы можете сделать самый простой тест после 5-10-60 минут на iOS? По сути, иметь NSTimer огонь после предварительно определенного интервала.

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

Ответы [ 2 ]

2 голосов
/ 19 октября 2010

Когда ваше приложение переходит в фоновый режим, система попытается вспомнить столько ресурсов, сколько вы можете дать ему, таких как изображения, перья и т. Д. У вас есть уведомление об этом.(– applicationDidEnterBackground: и т. Д.) После этого он будет «сортировать» все фоновые живые приложения в соответствии с порядком использования ресурсов.Приложение, которое использует больше ресурсов, на первом месте.Затем, когда новое приложение выходит на передний план, если система считает, что ей нужно больше ресурсов, чем в настоящее время, оно начинает убивать фоновые приложения.используя отсортированный выше список.

Это означает, что чем меньше ресурсов вы используете в фоновом режиме, тем дольше будет работать ваше приложение.НО, нет гарантии, что он проживет долго.(Все зависит от использования пользователем).Также нет уведомлений, когда оно будет убито!, Поэтому вы не можете предполагать, что ваше приложение будет жить в течение 60 минут.

Возможно, вы захотите прочитать этот документ Apple о том, как что-то сделатьфон (с некоторыми временными ограничениями, вне курса) и, вероятно, также UIApplicationDelegate ссылка на класс.

Надеюсь, это поможет;)

1 голос
/ 13 декабря 2010

Просто используйте локальное уведомление

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...