Intereting Posts
Проект внедрения Android Studio Eclipse NDK не настроен на выпуск в андроид-студии Использовать созданные JAXB (xjc) классы в android Доступ к каталогу / cache в файловой системе Android Как программно добавить 2 текстовых изображения в линейной компоновке Proguard с сервисами google-play Когда статус зарегистрированOnServer на Android GCM истекает? Байт кнопки onclicklistener Android – «Экспортированный приемник не требует разрешения» на приемниках, предназначенных для получения от системных служб Как вы можете сделать поддержку распознавания речи эмулятором Android RecyclerView с различными Cardlayouts Невозможно выполнить dex: несколько файлов dex определяют Lbolts / AggregateException Почему ImageView.setImageMatrix () не работает? Если A расширяет B, то расширяет C, почему я могу отбрасывать A, но получаю листинг ClassCastException на C? Какова концептуальная разница между датчиком вектора вращения и датчиком ориентации в Android?

Что такое идентификационный номер GCM?

Привет, я хочу добавить gcm в мое приложение. Мое приложение – новостное приложение. Пользователь может просматривать новости после регистрации. Приложение запрашивает интересы пользователей (экономика, спорт, автомобили и т. Д.) И сохраняет их. Я хочу отправлять новости пользователю как уведомление от php и mysql. Я должен решить отправить новости, к которым пользователи. Поэтому мне нужны идентификаторы регистрации.

Это номер устройства Android? Или комбинация учетной записи google Android и номера устройства Android?
Или комбинация учетной записи google Android и номера устройства Android и идентификатора пользователя моего приложения?

пример

Android-устройство id = a => GCM RegID = a
Android-устройство id = a, учетная запись google id = b => GCM RegID = ab
Android-устройство id = a, учетная запись google id = b, приложение x user id = c => GCM RegID = abc

Если x пользователь выходит из приложения и пользовательский логин пользователя на том же устройстве будет изменен GCM RegId? Если это не изменится, и я нажимаю новости об экономике для пользователя (который не интересуется экономикой), устройство будет показывать неправильное уведомление неверному пользователю. Итак, что такое идентификатор регистрации GCM?

Идентификатор регистрации – это идентификатор, назначенный GCM для одного экземпляра одного приложения, установленного на устройстве Android. Устройство присваивает этот идентификатор, когда он регистрируется в Google Cloud Messaging. Документация GCM не указывает, какая информация кодируется в этом идентификаторе.

В некоторых старых версиях Android (до 4.0.4) для регистрации в GCM требуется учетная запись Google.

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

Идентификатор регистрации – уникальный идентификатор для конкретного пакета на конкретном устройстве. GCM идентифицирует цель, используя этот идентификатор.

В вашем случае этот идентификатор не решит вашу проблему.

Дело 1:

Если вы отмените регистрацию устройства у GCM при выходе из системы и зарегистрируйтесь снова, это не гарантирует, что идентификатор регистрации будет другим (может быть и не может быть).

Случай 2:

GCM обновляет время регистрации.

Таким образом, этот идентификатор не подходит для определения зарегистрированного пользователя.


Возможное решение

Отправляйте только общее сообщение от GCM на устройство, например «эй, у вас есть что-то новое, идите на сервер». Теперь устройство запросит сервер для нового элемента. Здесь сервер будет идентифицировать зарегистрированного пользователя и предоставить ему соответствующие данные.