На этой странице вы найдете помощь в устранении неполадок и ответы на часто задаваемые вопросы о Cloud Messaging .
Firebase Cloud Messaging предоставляет полный набор возможностей обмена сообщениями через свои клиентские SDK и протокол HTTP-сервера. Для развертываний со сложными требованиями к обмену сообщениями FCM — правильный выбор.
Notifications Composer — это легковесное бессерверное решение для обмена сообщениями, построенное на базе Firebase Cloud Messaging . Благодаря удобной графической консоли и сокращенным требованиям к программированию, Notifications Composer позволяет пользователям отправлять сообщения для повторного привлечения и удержания пользователей, стимулирования роста приложения и поддержки маркетинговых кампаний.
| Возможности | Компоновщик уведомлений | Cloud Messaging | |
|---|---|---|---|
| Цель | Одно устройство | ||
| Клиенты, подписавшиеся на определенные темы (например, погода). | |||
| Клиенты в предопределенном пользовательском сегменте (приложение, версия, язык) | |||
| Клиенты, входящие в определенные аналитические целевые группы. | |||
| Клиенты в группах устройств | |||
| От клиента к серверу | |||
| Тип сообщения | Уведомления размером до 2 КБ | ||
| Сообщения данных размером до 4 кБ | |||
| Доставка | Немедленный | ||
| Местное время на будущем клиентском устройстве | |||
| Аналитика | Встроенная аналитика уведомлений и анализ воронки продаж. |
Firebase Cloud Messaging можно использовать как автономный компонент, без подключения к другим сервисам Firebase.
Если кажется, что устройства не получили сообщения, сначала проверьте две возможные причины:
Обработка уведомлений в фоновом режиме. Клиентским приложениям необходимо добавить логику обработки уведомлений, когда приложение находится на переднем плане устройства. Подробности см. для iOS и Android .
Ограничения сетевого брандмауэра. Если в вашей организации используется брандмауэр, ограничивающий трафик в Интернет и из Интернета, вам необходимо настроить его таким образом, чтобы разрешить подключение к FCM , чтобы ваши клиентские приложения Firebase Cloud Messaging могли получать сообщения. Необходимо открыть следующие порты:
- 5228
- 5229
- 5230
FCM обычно использует IP-адрес 5228, но иногда применяет 5229 и 5230. FCM не предоставляет конкретные IP-адреса, поэтому вам следует разрешить вашему брандмауэру принимать исходящие соединения со всеми IP-адресами, содержащимися в блоках IP-адресов, перечисленных в ASN Google 15169 .
Когда ваше приложение находится в фоновом режиме, уведомления отображаются в системном трее, и onMessageReceived не вызывается. Для уведомлений с данными, само уведомление отображается в системном трее, а данные, содержащиеся в уведомлении, могут быть получены из интента, запускаемого при нажатии пользователем на уведомление.
Для получения дополнительной информации см. раздел «Приём и обработка сообщений» .
FID (Firebase Installation ID) — это идентификатор экземпляра приложения. По умолчанию данные установки Firebase резервируются и восстанавливаются. Поэтому при восстановлении восстановленный экземпляр приложения и исходный экземпляр приложения используют один и тот же FID. Поскольку FCM хранит только один токен на каждый FID, если используются как исходный, так и восстановленный экземпляры приложения, то при регистрации одного экземпляра приложения в FCM токен другого экземпляра приложения удаляется, что приводит к ошибке 404.
Мы рекомендуем разработчикам выполнить в своих приложениях следующие действия:
- Исключите данные установки Firebase из резервной копии. Данные установки Firebase хранятся в файле
PersistedInstallation....json. Имя файла является константой для приложения. Например,<exclude domain="file" path="PersistedInstallation.W0R...GQ.json" />
Нет. Firebase Cloud Messaging перешла на протокол APNs на основе HTTP/2 в 2017 году. Если вы используете FCM для отправки уведомлений на устройства iOS, от вас ничего не потребуется.
квоты и лимиты FCM
Данный вариант использования невозможен. Необходимо распределить трафик на 5 минут.
К сожалению, по этой причине мы не можем увеличить квоту. Чтобы избежать скачков трафика , вам необходимо распределить свой трафик на 5 минут.
Мы рекомендуем начинать отправку уведомлений как минимум за 5 минут до события. В качестве альтернативы, отправляйте сообщения с данными и реализуйте аналог обработчика onMessageReceived на вашей платформе, чтобы заранее запланировать локальные уведомления.
См. рекомендации Google Cloud по построению графиков и мониторингу показателей квот .
Мы понимаем, что ограничения по квотам могут создавать сложности, но квоты жизненно важны для обеспечения надежности сервиса, и мы не можем предоставлять исключения. Используйте повторные попытки для корректной обработки ошибок 429 .
Ваш запрос на увеличение квоты зависит от того, как вы используете FCM . В любом случае, вы можете ожидать ответа в течение нескольких рабочих дней. В некоторых случаях может потребоваться некоторая переписка по поводу вашего использования FCM и различных обстоятельств, что может затянуть процесс. Если все требования выполнены, большинство запросов будут обработаны в течение 2 недель.
Вы можете запросить дополнительную квоту для проведения мероприятия, длящегося до 1 месяца. Запрос необходимо подать не менее чем за 1 месяц до мероприятия, указав четкие даты начала и окончания мероприятия. FCM приложит все практические усилия для выполнения запроса. В случае одобрения, увеличение квоты будет отменено после окончания мероприятия.
Хотя Google не будет делать это легкомысленно, квоты могут изменяться по мере необходимости для защиты целостности системы. По возможности Google будет уведомлять вас о таких изменениях заранее. Поддерживайте актуальность контактных данных ваших партнеров по Cloud MSA , чтобы повысить вероятность получения уведомлений о работе сервиса.