Google Cloud Messaging ( GCM ) — это мобильная служба уведомлений , разработанная Google , которая позволяет разработчикам сторонних приложений отправлять данные уведомлений или информацию с серверов разработчиков в приложения, ориентированные на операционную систему Google Android , а также в приложения или расширения, разработанные для интернет-браузера Google Chrome . Она была доступна разработчикам бесплатно. Служба GCM была впервые анонсирована в июне 2012 года [1] как преемник ныне несуществующей службы Android Cloud to Device Messaging (C2DM) от Google, ссылаясь на улучшения аутентификации и доставки, новые конечные точки API и параметры обмена сообщениями, а также на снятие ограничений на скорость отправки API и размеры сообщений. [2] Она была заменена Firebase Cloud Messaging (FCM) от Google 29 мая 2019 года. [3]
GCM впервые был запущен как служба Android Cloud to Device Messaging (C2DM) от Google , впервые представленная в Android 2.2 компанией Google . [4] [5] [6]
Переход на Google Cloud Messaging был впервые анонсирован, когда сервис Android был представлен 27 июня 2012 года на конференции Google I/O . [7] Вскоре после анонса сервиса Google Cloud Messaging компания Google опубликовала документацию, которая поможет разработчикам приложений перейти с C2DM на новый сервис. [8] Для перехода на сервис потребовались изменения в SDK и коде, а также выпуск обновления приложения в опубликованном репозитории (например, Google Play ) для загрузки и обновления.
Сервис Chrome был анонсирован перед Google I/O 2013 в сообщении в блоге под названием «Создание эффективных приложений и расширений с помощью push-сообщений» [9] .
На конференции I/O 2015 компания Google анонсировала новый SDK и поддержку iOS .
Google Cloud Messaging функционирует с использованием API и SDK сервера , оба из которых поддерживаются Google. GCM имеет возможность отправлять push-уведомления , команды глубокого связывания и данные приложений. Более крупные сообщения могут быть отправлены с объемом данных полезной нагрузки до 4 КБ . [10]
После предоставления приложению разрешения на получение и отображение уведомлений клиентское приложение отправляет запрос API регистрации в интерфейс Google Cloud Messaging, чтобы начать процесс регистрации. Служба GCM получает и подтверждает запрос и отвечает, предоставляя устройству идентификатор регистрации GCM , уникальный идентификатор, который разработчик позже использует для отправки уведомления на отдельное устройство. Идентификатор сохраняется на устройстве и обычно отправляется на сервер приложений разработчика для сохранения. Идентификатор регистрации GCM — это случайно сгенерированный идентификатор, который не содержит никакой личной или аппаратной информации, которая могла бы позволить разработчику узнать персональную личность пользователя. [11] Когда разработчик хочет отправить событие уведомления на устройство, процесс начинается с отправки запроса API POST в службу аутентификации GCM. Запрос POST включает идентификатор регистрации GCM, приоритет, необязательные значения и ссылки, а также информацию, которая должна отображаться на устройстве по прибытии. После успешной проверки идентификатора регистрации GCM и других учетных данных возвращается токен аутентификации. Затем оба идентификатора отправляются в службу GCM для постановки в очередь и доставки на устройство.