Лучший способ связать токен FCM с устройством?
Я делаю сервер, который отправляет сообщения с помощью FCM клиентам в зависимости от того, что происходит (изменение температуры и / или влажности, открытие двери и т. Д.).
Но если токен может измениться, как я могу отслеживать, чтобы устройство отправляло правильные сообщения (без использования системы входа в систему)?
Я думал связать токен с sim iccid в базе данных, это правильно?
2 ответа
Обновление 18.05.2017:
Запуск Android O, ANDROID_ID
теперь будет отличаться для каждого приложения на пользователя в устройстве.
Оригинальный ответ:
Если вы ищете долговременный (возможно, постоянный) идентификатор, который вы можете использовать, я думаю, вы можете использовать ANDROID_ID:
Строка ANDROID_ID
64-разрядное число (в виде шестнадцатеричной строки), которое генерируется случайным образом при первой настройке устройства пользователем и должно оставаться постоянным в течение всего срока службы устройства пользователя. Значение может измениться, если на устройстве выполнен сброс к заводским настройкам.
Примечание. Если устройство имеет несколько пользователей (доступно на определенных устройствах под управлением Android 4.2 или более поздней версии), каждый пользователь отображается как полностью отдельное устройство, поэтому значение ANDROID_ID уникально для каждого пользователя.
Постоянное значение: "android_id"
Тем не менее, есть еще некоторые факторы, которые вы должны учитывать в зависимости от вашего варианта использования. Я рекомендую ознакомиться с документацией по рекомендациям для уникальных идентификаторов.
FCM мудр, обычно он связан с пользователем, следовательно, он обычно связан с пользовательскими данными.
Используйте рекламный идентификатор устройства. Он не изменится, если пользователь не изменит его вручную. Пожалуйста, проверьте тему Как получить рекламный идентификатор в Android