Intereting Posts
Подписание подписи с помощью packageRelease «указано для свойства« signedConfig.storeFile »не существует» Как построить андроид с помощью Crosswalk lite с помощью ионного-cli? GCM defaultSenderID Студия Android не распознает запущенный эмулятор Обновить или принудительно перерисовать фрагмент Android Speech Recognition как услуга на Android 4.1 и 4.2 Библиотека поддержки Android v7: ошибка получения родительского элемента Как программно установить атрибут стиля в представлении Как сделать копию файла в android? Ссылка на домашний каталог пользователя в сценарии Gradle Как завершить несколько действий нажатием кнопки? Android-образец Bluetooth-кода для отправки простой строки через bluetooth Производительность чтения файлов на смартфонах: внутреннее хранилище против SD-карты и жесткий диск ПК Как установить imageview src? Невозможно передать действие провайдера действия поставщику действий

C2DM для облачных сообщений Google (GCM)

Как вы могли видеть, Google переносит свою систему Push Notification.

Руководство разработчика Google для GCM

Думаю, я не одинок, интересуюсь: жетоны, полученные от C2DM, все еще действительны для GCM?

Если нет, это значит, что мне нужно, чтобы все мои пользователи обновили мое приложение с новой версией, обновляющей токены на моих серверах …

ИЛИ

Я могу поддерживать параллельные системы, что я не думаю, что это хорошее решение

ИЛИ

Продолжайте использовать C2DM, пока не закончите, затем я умру вместе с ним 🙂

Solutions Collecting From Web of "C2DM для облачных сообщений Google (GCM)"

Хотя миграция на стороне клиента проста (просто измените «отправитель» с адреса электронной почты на идентификатор проекта), вы все равно столкнетесь с головными болями перехода, если ваше приложение некоторое время использует C2DM. См. Мой вопрос здесь: публикация уведомления GCM о существующих идентификаторах регистрации C2DM

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

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

Я перенесла приложение из C2DM в GCM. Нет, я не должен был мигрировать. Правильный термин, который должен «сосуществовать» как для C2DM, так и для GCM. Потому что я не могу заставить всех моих нынешних пользователей перейти на GCM. Моя цель – убедиться, что и новые (см. GCM), и существующие (см. C2DM) пользователи могут получать push-сообщения.

Для клиентской стороны:

  1. Измените отправителя на идентификатор проекта

Для серверной части:

  1. Добавьте новый столбец в db для хранения идентификатора регистрации GCM.
  2. Если запись пользователя с идентификатором регистра gcm> затем нажмите на gcm server> else c2dm server

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

На сайте документации разработчика Android есть миграционный справочник .

C2DM продолжит оказывать поддержку на некоторое время. Лучше перенести наше приложение в GCM и опубликовать обновленную версию нашего приложения. (По моему мнению)