На этой странице вы найдете помощь в устранении неполадок и ответы на часто задаваемые вопросы о Cloud Messaging .
Firebase Cloud Messaging предоставляет полный набор возможностей обмена сообщениями через свои клиентские SDK и протокол HTTP-сервера. Для развертываний со сложными требованиями к обмену сообщениями FCM — правильный выбор.
The Notifications composer is a lightweight, serverless messaging solution built on Firebase Cloud Messaging . With a user-friendly graphical console and reduced coding requirements, the Notifications composer lets users send messages to re-engage and retain users, foster app growth, and support marketing campaigns.
| Возможности | Компоновщик уведомлений | Cloud Messaging | |
|---|---|---|---|
| Цель | Одно устройство | ||
| Клиенты, подписавшиеся на определенные темы (например, погода). | |||
| Клиенты в предопределенном пользовательском сегменте (приложение, версия, язык) | |||
| Клиенты, входящие в определенные аналитические целевые группы. | |||
| Клиенты в группах устройств | |||
| От клиента к серверу | |||
| Тип сообщения | Уведомления размером до 2 КБ | ||
| Сообщения данных размером до 4 кБ | |||
| Доставка | Немедленный | ||
| Местное время на будущем клиентском устройстве | |||
| Аналитика | Встроенная аналитика уведомлений и анализ воронки продаж. |
Firebase Cloud Messaging можно использовать как автономный компонент, без подключения к другим сервисам Firebase.
Если кажется, что устройства не получили сообщения, сначала проверьте две возможные причины:
Foreground message handling for notification messages. Client apps need to add message handling logic to handle notification messages when the app is in the foreground on the device. See the details for iOS and 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) is the identifier of an app instance. By default, Firebase Installation data is backed up and restored. So in the restoration case, the restored app instance and the original app instance share the same FID. Since FCM only stores one token per FID, if both the original app instance and the restored app instance are in use, then when one app instance registers with FCM, the other app instance's token is removed, which causes 404 errors.
Мы рекомендуем разработчикам выполнить в своих приложениях следующие действия:
- Exclude Firebase installation data in backup. The Firebase installation data is stored in a
PersistedInstallation....jsonfile. The filename is a constant for an app. For example,<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 приложит все практические усилия для выполнения запроса. В случае одобрения, увеличение квоты будет отменено после окончания мероприятия.
While Google won't do so lightly, quotas may be changed as needed to protect the integrity of the system. When possible, Google will notify you in advance of such changes. Keep your Cloud MSA contacts updated to increase the chances of receiving service announcements.