Планирование выполнения приложения iPhone - PullRequest
1 голос
/ 05 марта 2010

Я пишу приложение для iPhone для клиента, и они запросили функцию, посредством которой приложение "просыпается" в определенное время в течение дня, чтобы отобразить сообщение пользователю.

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

Насколько я могу судить, кажется, что единственный способ добиться этого - реализовать push-уведомления и заставить сервер отправлять приложению сообщение в соответствующее время суток. Но это действительно некрасиво и нежелательно по нескольким причинам:

  • Требуется постоянное подключение к Интернету на телефоне пользователя (что я не могу предположить)
  • Это накладывает на сервер большое бремя необходимости отслеживать эти времена (которые могут отличаться для каждого пользователя)
  • Это просто дурацкий обходной путь - для этого не предназначены push-сообщения, выделенный планировщик кажется гораздо лучшим вариантом.

Кто-нибудь знает лучшую альтернативу?

Ответы [ 2 ]

4 голосов
/ 05 марта 2010

В настоящее время это единственный вариант. Отправьте в Apple сообщение об ошибке с запросом «локальных уведомлений» (термин, который, как я слышал, используют их инженеры в связи с этой проблемой). В идеале, они будут работать так же, как теперь работают push-уведомления, но не требуют никакого сетевого соединения. Извините!

1 голос
/ 27 сентября 2010

Теперь вы можете использовать локальное уведомление вместо push-уведомления. Доступно в iOS 4.0.

...