Всем привет. Как в FCM-пушах обрабатываете log out (разлогинивание) пользователя? Как понимаю, есть несколько вариантов:
1) Посылать запрос на свой бэк с токеном. Соответственно, они там обрабатывают переденный им токен, т.е. перестают слать на него уведомления.
Недостаток: log out не возможен без интернета. Хотя через флаг и WorkManager можно решить
2) Вызывать FirebaseInstanceId.getInstance().deleteInstanceId()
, затем запрашивать сразу же новый FirebaseInstanceId
, а при авторизации послыть новый токен на свой бэк.
Недостаток: гугл не рекомендует связывать FirebaseInstanceId
с авторизацией. Одно устройство – один FirebaseInstanceId
.
Как по мне, надо проектировать логин таким образом, чтобы логаут не зависел от токена фаербейса и не завязывался на него. Или я что-то не так понял?