Отправка FCM через прокси не маршрутизирует соединение телефона
Отделите маршрут Admin API Firebase от постоянного сетевого соединения FCM принимающего устройства Android.
Бэкенд может успешно отправить запрос Firebase Cloud Messaging через корпоративный прокси, тогда как устройство Android так и не получит уведомление. Запрос Admin API бэкенда и соединение FCM устройства — это разные пути.
Сетевые рекомендации Firebase указывают, что протокол устройства FCM нельзя проксировать через сетевой прокси. Настройка HTTP-клиента на отправителе не превращает это постоянное соединение устройства в запрос HTTP-прокси.
Для устройств Android документированные целевые порты TCP — 5228, 5229, 5230 и 443. FCM обычно использует 5228, остальные порты также доступны. Применяйте соответствующую политику в сети, к которой подключаются принимающие устройства.
Используйте опубликованные рекомендации Firebase по именам хостов, когда брандмауэр ограничивает назначения; они не советуют фиксированные списки разрешённых IP, поскольку адреса могут меняться. Устройствам также нужны работающий DNS и стабильный путь для их долговременного соединения.
Если отправитель даёт сбой при получении токена или при запросе Admin API, диагностируйте этот серверный HTTP-транспорт. Для HTTP-интерфейсов Firebase Admin Java настройте транспорт API и транспорт учётных данных вместе. Если отправка успешна, а доставка нет, сохраните этот результат и исследуйте путь устройства, вместо того чтобы снова и снова менять прокси-учётные данные бэкенда.