Я не уверен, как правильно обрабатывать разные учетные записи пользователей на одном и том же устройстве, поскольку Firebase создает только один Instance-Id для каждого устройства.
Поэтому я подумал, что можно было бы удалить Instance-Идентификатор, когда пользователь вышел из системы и создал нового, когда новый пользователь вошел в систему.
При входе в систему:
FirebaseInstanceId.getInstance().getInstanceId().addOnCompleteListener(task -> System.out.println(task.getResult().getToken()));
При выходе из системы:
FirebaseInstanceId.getInstance().deleteInstanceId()
Гарантирует ли Firebase, что Instance-Id будет уникальным, даже если он генерируется несколько раз на одном устройстве?Причины, по которым я предпочитаю такой подход, заключаются в том, что отписаться от пользователя сразу по всем темам просто, и, кроме того, push-уведомления могут быть адресованы конкретному пользователю.