2016-09-08 4 views
0

Как я вижу во многих приложениях при настройке уведомлений пользователей в качестве напоминаний, он работает нормально, но через некоторое время, когда пользователь начинает игнорировать открытие уведомления или приложения, он не будет отправлять дополнительные уведомления. Есть ли способ отключить это поведение и продолжить отправку уведомлений, даже если они не открывают приложение?Местные уведомления iOS автоматически отключены, если приложение не открыто

+0

Можете ли вы привести более конкретный пример того, что вы имеете в виду. Я никогда не испытывал поведения, которое вы описываете. – Fogmeister

+0

У меня есть приложение для здоровья, о котором я бы не упомянул здесь, поэтому он не считается рекламой, но у него есть функция установить оповещение о том, чтобы пить воду каждые 2 часа, но после нескольких дней отсутствия активности «нет приложения, открывающего или отменяющего уведомление», он прекратит отправку уведомлений. – XIII

+0

«Многие приложения», так что упомянуть другой. Если вы используете приложение в качестве примера, чтобы показать проблему, используйте ее. Это позволяет бесконечно легче понять вашу проблему, если мы сможем увидеть ее в действии. – Fogmeister

ответ

1

То, что вы описываете, звучит как местные уведомления. Они запланированы в коде, чтобы уйти в определенное время. Насколько я знаю, нет такой вещи, как повторяющееся местное уведомление. Они «имитируются», создавая множество отдельных локальных уведомлений для начала.

Редактировать As PaulW указал. Повторяющиеся уведомления возможны, но редко используются из-за их ограничений.

Когда приложение открыто, он запускает некоторый код для создания некоторых локальных уведомлений.

Если приложение не открывается, код никогда не запускается для создания дополнительных уведомлений.

Итак, в этом примере это не iOS, останавливающее повторяющиеся уведомления, потому что вы не открыли приложение. Уведомления перестают повторяться, потому что вы не открываете приложение и не даете ему возможности создать больше из них.

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

Редактировать Вы также можете использовать повторные уведомления, но они ограничены повторением каждой единицы времени. Один раз в день, один раз и час, раз в минуту и ​​т. Д., Поэтому вы не можете делать это каждые два часа.

В качестве альтернативы вы можете использовать бэкэнд для отправки удаленных уведомлений. Они теоретически могут повторяться бесконечно, потому что приложение не требуется для их создания. Конечно, это предполагает, что у вас есть инфраструктурная настройка для ее разработки.

+1

Вы можете создавать повторяющиеся локальные уведомления, но они не очень гибкие; например Вы можете иметь один раз в день или один раз в час, но не «раз в два часа между 9 и 5», поэтому большинство приложений используют описанный вами подход. – Paulw11

+0

@ Paulw11 ах ок. Я предполагаю в примере, когда приложение выполнило мой метод. Нет ничего документированного в отношении повторения уведомлений, отмененных ОС. – Fogmeister

+0

Да, я думаю, что ваш ответ - правильное объяснение, так как это самый распространенный метод из-за ограничений повторения уведомлений. – Paulw11