1

Так как приложение IOS 9 меняет токен apns после переустановки приложения. Но iOS 8 и 7 этого не делают.Как предотвратить push-уведомления приложения после переустановки?

Как отличить следующую ситуацию с iOS 8 и iOS 7?

  1. Пользователь установил приложение.
  2. Пользователь запустил приложение и разрешил push-уведомления в приложении. (Я получил некоторый токен)
  3. Пользователь вошел в систему/зарегистрировался. (Я подключил токен с зарегистрированным пользователем).
  4. Пользователь удалил приложение.
  5. Пользователь установил приложение, запустил его один раз и разрешил push-уведомления. (Getted тот же маркер,)

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

Как предотвратить это?

ответ

2

Вы можете позвонить
[[UIApplication sharedApplication] unregisterForRemoteNotifications];
в
-application:didFinishLaunchingWithOptions: методом. Затем, когда пользователь входит в систему, зарегистрируйтесь для удаленных уведомлений.

Но в любом случае, если приложение будет удалено и установлено снова, оно не получит push-уведомления до тех пор, пока -registerForRemoteNotifications не будет вызван, и вы должны вызвать этот метод ТОЛЬКО после аутентификации пользователя. Даже если токен совпадает с предыдущим, он будет связан с этим новым пользователем, и ваш сервер должен это обработать.

+0

Благодарим вас за ответ! Я изменил порядок действий. 'registerForRemoteNotifications' вызывается перед аутентификацией пользователя, потому что это необходимо для новостных и маркетинговых сотрудников. Есть ли у вас какие-либо предложения по такой ситуации? – Alexander

+0

Если ваши уведомления не являются специфичными для пользователя, то в чем проблема? – arturdev

+0

Когда пользователь незарегистрирован, я хочу отправить только новостных/маркетинговых сотрудников. Но если пользователь подписан, я хочу отправить пользовательскую информацию. – Alexander

Смежные вопросы