Мое приложение является специфичным для пользователя. несколько пользователей могут использовать одно и то же устройство. Мое приложение имеет автономные функции выхода из системы. подумайте, что один из моих пользователей (скажем, пользователь 1) вышел из системы офлайн. В это время мой сервер отправляет уведомление APNS для пользователя1. через некоторое время мое устройство станет в сети. за это время я не вошел в приложение. мой вопрос в том, что пока мое устройство подключено к сети (когда доступно сетевое подключение), и пользователь1 выйдет из системы, мое приложение получит push-уведомление от сервера APNS (отправлено для выведенного из системы пользователя).
Лучшая практика для обработки уведомления Apple push, когда несколько пользователей используют одно и то же устройство
Ответ 1
При выходе из системы:
[[UIApplication sharedApplication] unregisterForRemoteNotifications];
При входе в систему:
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:
(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)];
Ответ 2
Это поможет вам точно:
Сначала вы должны запросить веб-службу при выходе пользователя из системы. Эта веб-служба удаляет токен устройства для пользователя, который собирается выйти из базы данных сервера.
Теперь вам нужно добавить чек (в методе push-уведомлений на веб-конце, который использует ваш сторонний разработчик для отправки запроса на push для APNS), который будет отправлять только push для пользователя, у которого есть токен устройства. Что это.
Ответ 3
Вы можете отключить получение push-уведомления программно, когда пользователь выходит из вашего приложения. Если вы не отключили push-уведомление программно, оно будет получать уведомления, так как маркер вашего устройства зарегистрирован на сервере (если вы подключены к Интернету)
Ответ 4
При выходе из системы вы должны сделать один служебный вызов, который просто уничтожит токен этого пользователя с веб-сервера.
При успешном входе в систему пользователя вы должны зарегистрировать свое устройство для push-уведомления, как правило, как мы делаем. Таким образом, ваш токен вашего устройства будет зарегистрирован на сервере для определенного пользователя.