Отправлять уведомления конкретному пользователю с помощью концентратора уведомлений - Azure и GCM

Я разработчик программного обеспечения в Xamarin - Android, я хочу создавать уведомления. Для этого я использую центр уведомлений Azure в сочетании с сервисом Google - Google Cloud Messaging (GCM).

Моя проблема возникает, когда я хочу отправить уведомление конкретному пользователю. Я понял, что мне нужно использовать "TAGS", когда я создаю нового пользователя в системе (Uniqe TAG)

Действительно, это прекрасно работает, но когда пользователь вышел из своей учетной записи, а затем подключился к другой (с другой TAGS) - TAGS его старой учетной записи сохраняются в определенное время, и он продолжает получать личные сообщения от предыдущей учетная запись!!!!

Кто-нибудь знает, что с этим можно сделать?

большое спасибо вам

1 ответ

На самом деле это проблема многих людей / приложений на iOS и Android.

Что вы должны сделать, это:

  • При первом запуске зарегистрируйте свое приложение в Центре уведомлений Azure (ANH) и регистрируйте его при каждом запуске, чтобы синхронизировать регистрацию.
  • Если пользователь входит в систему, обновите регистрацию дополнительным тегом для этого пользователя (например, "user:XY")
    • Отправка уведомлений в этот тег пользователя, конечно, приведет к уведомлениям на всех устройствах, на которых пользователь вошел в систему.
  • Если пользователь выходит из системы, обновите регистрацию без пользовательского тега (пропустите пользовательский тег, чтобы после регистрации больше не было пользовательского тега)
    • Регистрация будет немедленно обновлена ​​на ANH, и отправка уведомлений пользователю (тегу) не приведет к уведомлениям на этом конкретном клиенте.

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

Что вы не должны делать:

Другие вопросы по тегам