Как получить кодовый блок для запуска на iPhone один раз каждые 24 часа в полночь, если мое приложение приостановлено (многозадачность) - PullRequest
1 голос
/ 14 июля 2010

Читал документацию iOS4 для многозадачности и не мог понять это.

Мне нужно обновлять количество значков на значке моего приложения после полуночи каждый день, пока приложение работает в режиме ожидания (с многозадачностью).

Я знаю, что это должно быть возможно, просто не могу придумать лучший способ сделать это.

Спасибо.

Ответы [ 2 ]

3 голосов
/ 14 июля 2010

iOS "многозадачность" очень специфична.Здесь есть важное различие между состояниями:

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

Background : В некоторых особых случаях вы можете запросить у ОС запустить приложение в фоновом режиме.(Воспроизведение аудио, местоположение, завершение длинного задания, voip.)

Итак, краткий ответ на ваш вопрос: «Вы не можете».

Вот пара полезных ссылок наМногозадачность iOS, такая как есть.

Понимание состояний и переходов приложения

Выполнение кода в фоновом режиме

0 голосов
/ 14 июля 2010

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

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

...