Google Cloud Messaging

Google Cloud Messaging (обычно называют GCM) - мобильный сервис, разработанный Google, позволяющий разработчикам сторонних приложений передавать уведомления или информацию в приложения, ориентированные на операционную систему Google Android, а также в приложения и расширения, разработанных для Google Chrome. 
Он доступен разработчикам бесплатно. 
О GCM Service впервые было объявлено в августе 2013 года как о преемнике ныне несуществующей службы Google Android Cloud to Device Messaging (C2DM). Новый сервис получил улучшения аутентификации и доставки сообщений, новые конечные точки API и параметры обмена сообщениями, а также на снятие ограничений в API на количество и размер сообщений.. C 29.05.2019 сервис GCM устарел. Новая версия сервиса получила название Firebase Cloud Messaging (FCM).

Развитие 
GCM впервые запущен в компании Google как Android Cloud to Device Messaging сервис службы (C2DM), впервые показанный в Android 2.2.

Переход к Google Cloud Messaging впервые было объявлено, когда Android сервис был открыт 27 июня 2012 года, в Google I/O. Вскоре после объявления о службе Google Cloud Messaging, Google опубликовала документацию для руководства разработчиков приложений с мигрирующими из C2DM на новый сервис. Для перехода к сервису требуется SDK и изменение кода, а также освобождение обновленного приложения в хранилище публикации (например, Google Play) для загрузки и обновления.

О сервисе Chrome был объявлено до Google I / O 2013 в блоге под названием "Создание эффективных приложений и расширений с push-уведомлениями.'

В [I/O] 2015 Google объявила о новом SDK и о iOS поддержке.

Технические детали 
Функции Google Cloud Messaging используют серверные API и SDK, которые поддерживаются Google. GCM имеет возможность посылать push-уведомления, команды и данные приложений. Большие сообщения могут содержать до 4 Кбайт данных.

После разрешения приложению получать и отображать уведомления клиентское приложение отправляет API-запрос регистрации интерфейсу Google Cloud Messaging, чтобы начать процесс регистрации. Служба GCM принимает и подтверждает запрос и отвечает, давая устройству Регистрационный ID GCM («GCM Registration ID»), уникальный идентификатор, который разработчик позже использует для отправки уведомления на конкретное устройство. Идентификатор сохраняется на устройстве, и, как правило, также отправляется на сервер приложений разработчика. Регистрационный ID GCM представляет собой случайным образом сгенерированный идентификатор, который не содержит никакой личной информации или информации об устройстве, которая могла бы позволить разработчику узнать личные данные пользователя. Когда разработчик хочет отправить уведомление о событии устройству, процесс начинается с отправки API-запроса POST, который отправляется в службу аутентификации GCM. Запрос POST включает в себя GCM ID, приоритет, дополнительные значения и ссылки, а также информацию, которая будет отображаться на устройстве по прибытии. После успешной проверки GCM ID и других учётных данных возвращается маркер аутентификации. Оба идентификатора затем направляются в службу GCM для постановки ​​в очередь и доставки на устройство.

См. также 
 Разработка программного обеспечения Android
 Служба уведомлений Apple
 SQL Server Notification Services
 Windows Notification Service

Примечания

Ссылки 
 Official Android Developer Page
 Official Chrome Developer Page
Official Firebase Cloud Messaging
 GCM Collegelib Seminar
 Google Chrome Push Notifications implementation by MindAsk

Мобильная радиосвязь
Программное обеспечение по алфавиту
Сервисы Google