Как показать "Хочу отправить вам Push Notifications" Alert View еще раз?

enter image description here

Мне удалось показать Alert View, как показано выше, после регистрации для удаленных уведомлений. Но когда я удалю свое приложение Project и снова его построю, он больше не будет отображаться.

Появятся ли какие-либо шансы снова показать вид предупреждения на том же устройстве?

Что мне нравится, так это снова получить токен моего устройства, потому что я не смог временно сохранить токен устройства в NSUserDefaults.

Ответ 1

При запуске ваше приложение должно запрашивать токен через:

- (void)registerForRemoteNotificationTypes:(UIRemoteNotificationType)types

и получит сообщение от iOS в сообщении делегата:

– application:didRegisterForRemoteNotificationsWithDeviceToken:

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

Net - вы не можете заставить оповещение, но вам не нужно.

Ответ 2

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

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

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

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

ссылка: https://developer.apple.com/library/ios/technotes/tn2265/_index.html

Ответ 3

Обращаясь к вопросу о представлении диалогового окна разрешений push-уведомлений снова, когда это необходимо для тестирования - это, безусловно, обходное решение, но здесь говорится:

Только что закончил работу над приложением, которое широко использует Push Notifications и пробовал все обычные перестановки без успеха... В конечном итоге я понял, что наиболее оптимизированный способ обойти эту проблему состоял в том, чтобы заставить устройство использовать только для тестирования (т.е. для iPod Touch с низким уровнем конца).

В reset в диалоговом окне выполните настройки > Общие > reset > Стереть все содержимое и настройки. Перейдите через процесс настройки устройства, переустановите приложение и перейдите.

Это был единственный способ, который я нашел, чтобы проверить опыт "первого запуска" по требованию, по мере необходимости в ходе разработки/тестирования. Это также добавило много дополнительной гибкости в процесс.

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

[P.S. Это, вероятно, также будет полезно в будущем для тестирования бета-версий ОС и т.д.]

Ответ 4

Да.

http://developer.apple.com/library/ios/#technotes/tn2265/_index.html

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

Ответ 5

Временно измените свой идентификатор пакета.

com.mycompany.app → com.mycompany.app1