Как очистить предпочтения iOS push-уведомлений для моего приложения? - PullRequest
5 голосов
/ 01 апреля 2012

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

Мне нужно это для проверки push-уведомлений сервера.

Ответы [ 7 ]

5 голосов
/ 01 апреля 2012

Пожалуйста, попробуйте использовать UIApplication's - (void) unregisterForRemoteNotifications способ.

5 голосов
/ 24 июля 2014

Вы можете увидеть здесь: https://developer.apple.com/library/mac/technotes/tn2265/_index.html как показано ниже.

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

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

Удалить приложение с устройства. Полностью выключите устройство и включите его снова. Перейдите в «Настройки»> «Основные»> «Дата и время» и установите дату на день вперед или более. Снова полностью выключите устройство и снова включите его.

4 голосов
/ 01 апреля 2012

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

1 голос
/ 23 июня 2014

Это только сработало для меня в iOS7:

  • Удалите приложение с устройства.

  • Полностью выключите устройство и включите его снова.

  • Выберите «Настройки»> «Основные»> «Дата и время» и установите дату на день вперед или более.

  • Снова полностью выключите устройство и включите его.

  • Переустановите приложение

0 голосов
/ 11 января 2013

Работая на iOS 6.0, подход «удаляй и жди 24 часа» у меня не сработал.Отмена регистрации / повторного токена устройства также не работает, что является ошибкой со стороны Apple. Техническое примечание от Apple последний раз обновлялось в сентябре 2011 года и выглядит устаревшим.

Мне удалось снова вызвать предупреждение о разрешении только после полной перезагрузки устройства.Это довольно сложно для тестирования, но это работает.

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

0 голосов
/ 01 апреля 2012

Как сказал JS Rodrigues, вы можете в любое время отменить регистрацию своего устройства. И все же я не уверен, почему вы пытались еще раз попросить разрешения. Если вы используете APN на своем собственном сервере, то после регистрации вашего устройства токен устройства из - (void) приложения: (UIApplication *) app didRegisterForRemoteNotificationsWithDeviceToken: (NSData *) метод deviceToken должен быть опубликован в вашей системе APN, один раз и для всех. Поэтому, если вы попытались проверить, может ли токен устройства быть добавлен в вашу собственную систему, может понадобиться метод отмены регистрации. В противном случае нет необходимости делать это, так как токен записан в вашей системе, вы можете просто удалить его. И каждый раз, когда приложение запускается, в систему APN добавляется новая запись.

0 голосов
/ 01 апреля 2012

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...