iOS - попросить включить push-уведомления после первоначального отклонения - PullRequest
38 голосов
/ 27 января 2012

Я хотел бы знать, возможно ли принудительно вызвать всплывающее окно «XXXXX хочет отправить вам push-уведомления» из приложения после первоначального отклонения. Вариант использования выглядит следующим образом:

  • Пользователь устанавливает приложение, получает уведомление о push-уведомлениях, и отказывается, потому что они еще не знают / не доверяют приложению.

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

  • Итак, теперь пользователь попросил приложение уведомить их о чем-то конкретный, но в операционной системе отключены push-уведомления уровень.

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

  • В идеале, я хотел бы заставить "XXXX хотел бы послать вам толчок уведомления оповещения "в этот момент (второй раз, так как они установил приложение).

  • Полагаю, что план b состоял бы в том, чтобы показать им мое собственное сообщение о том, что они придется зайти в их настройки системы и включить его вручную в Чтобы получить оповещение, которое они хотят. Это далеко от идеала.

Любая помощь будет оценена. Спасибо.

Ответы [ 3 ]

52 голосов
/ 27 января 2012

Вы не можете заставить iOS показывать предупреждение снова.Вот лучший подход:

  1. Сохраните в вашем NSUserDefaults флаг, указывающий, следует ли вам регистрироваться для получения push-уведомлений при запуске.По умолчанию флаг имеет значение false.
  2. При запуске проверьте флаг.Если это правда, зарегистрируйтесь немедленно.В противном случае не регистрируйтесь.
  3. В первый раз пользователь делает что-то, что вызовет push-уведомление, зарегистрируется для push-уведомлений и установит флаг в NSUserDefaults.

ThisКстати, когда пользователь получает уведомление о push-уведомлениях, у него есть идея, почему он его получает, и он может сказать «да».

4 голосов
/ 27 января 2012

Я также сталкиваюсь с подобной проблемой.После долгих поисков я решил сделать то, что вы называете Планом Б. То есть показать пользователю мое собственное предупреждение о том, что для лучшего опыта нужно активировать push или что-то в этом роде.

Чтобы проверить, что требуетсяТипы push включены, используйте этот метод:

- (UIRemoteNotificationType)enabledRemoteNotificationTypes

Ссылка на UIApplication

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

3 голосов
/ 15 декабря 2014

Лучший способ сделать это - (если вы создаете игру) задать им упреждающий вопрос (например, хотите ли вы, чтобы мы уведомили вас, когда ваши урожаи будут готовы к уборке? -Да -Нет), и когда они отвечают «да», то запускают всплывающее окно родной iOS. затем вы можете наложить несколько вопросов вдоль воронки пользователей, и вы в конечном итоге поймаете их все.

...