2010-03-04 2 views
1

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

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

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

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

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

ответ

4

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

+0

Я так думал. Если бы спросить, на всякий случай. Спасибо за быстрый ответ! – Mac

1

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

+0

Действительно. Однако вопрос предшествует iOS 4.0, поэтому причина этого в первую очередь. Спасибо, хотя, безусловно, будет полезно, если приложение будет перенесено на iOS 4.0. – Mac

Смежные вопросы