Импортозамещение мобильной разработки: SDK, push и карты без Google-сервисов

Google Play больше не публикует приложения российских банков и госкомпаний, а у части пользователей на устройствах нет Google Mobile Services вовсе. Если ваше Android-приложение завязано на GMS – push через Firebase, карты Google, авторизацию Google Sign-In – оно деградирует тихо: уведомления не доходят, карта не грузится, а аналитика врёт. Разбираем, на что заменить три самых болезненных зависимости и как собрать билд, который работает без сервисов Google.

Push-уведомления: RuStore и Huawei вместо FCM

Firebase Cloud Messaging доставляет push через системный сервис Google. Нет GMS – нет доставки. Решение – несколько транспортов с фолбэком.

Базовый набор на 2023 год: RuStore Push SDK для устройств с предустановленным RuStore, Huawei Push Kit для аппаратов Huawei и Honor с HMS, плюс собственный сокетный канал (WebSocket или MQTT) как универсальный фолбэк для остального парка. На клиенте вы определяете доступный транспорт при старте и регистрируете токен в своём бэкенде; сервер маршрутизирует уведомление в нужный шлюз.

Главная работа – на бэкенде: единый слой отправки, который абстрагирует FCM, RuStore, HMS и сокет за одним интерфейсом. Не размазывайте логику выбора транспорта по приложению. И помните про данные в payload: токены устройств и содержимое уведомлений – чувствительная информация, к ней применимы те же принципы, что мы разбирали в материале про безопасность LLM-сервисов – минимизация полей, шифрование транзита, контроль доступа к шлюзу.

Карты: Яндекс MapKit и 2ГИС

Google Maps SDK тарифицируется в долларах и требует биллинг-аккаунт, недоступный из РФ. Зрелые альтернативы – Яндекс MapKit и 2ГИС Mobile SDK. Оба дают векторные карты, геокодинг, построение маршрутов и работу офлайн.

MapKit сильнее в покрытии и пробках по России, 2ГИС – в детализации зданий, входов и внутренней навигации по ТЦ. Для госпроектов с требованием хранения данных в РФ это плюс: тайлы и геосервисы остаются внутри контура. Закладывайте отдельный слой геоабстракции – интерфейс карты, который реализуют оба провайдера. Тогда смена SDK не превратится в переписывание половины экранов.

Сборка, доставка и аналитика

Приложение публикуйте в RuStore и AppGallery, дистрибутив для корпоративных и госзаказчиков раздавайте через MDM или прямую установку APK с подписью. Google Sign-In заменяйте на «Госуслуги» (ЕСИА), Sber ID или Яндекс ID – в зависимости от аудитории.

Firebase Analytics и Crashlytics тянут за собой GMS, поэтому выносите телеметрию на собственный стек: сбор событий – в свой бэкенд, краши – в self-hosted Sentry. Это разворачивается в той же production-инфраструктуре, что и ML-пайплайны – подход к выкатке и мониторингу описан в нашей статье про MLOps в продакшене.

Вывод

Уход от Google-сервисов – не одна замена SDK, а ревизия всей цепочки: push, карты, авторизация, аналитика, дистрибуция. Дешевле всего она проходит, когда заложена архитектурно: абстракция транспортов и провайдеров вместо прямых вызовов GMS. Это часть более широкого плана, который мы описывали в дорожной карте импортозамещения.

Onepoint проектирует и переносит мобильные приложения для бизнеса и госсектора под российский технологический контур – от аудита GMS-зависимостей до выката Android-приложения без Google-сервисов в RuStore.