Установите минимальную версию приложения с помощью удаленной конфигурации.

По мере развития вашего приложения новые версии могут вносить существенные изменения в бэкэнд-API, устранять критические уязвимости безопасности или заменять устаревшие сервисы и модели ИИ. В таких ситуациях более ранние версии приложения могут перестать работать надежно или безопасно.

С помощью Remote Config вы можете динамически управлять требованиями к версиям приложений из облака. Задавая параметры версий в Remote Config , вы можете запрашивать или требовать от пользователей обновления приложения без развертывания собственной серверной инфраструктуры или выпуска экстренного обновления.

Выберите стратегию обновления

Remote Config предоставляет параметры версии для оценки на стороне клиента, позволяя настроить пользовательский интерфейс обновления вашего приложения для одной из двух стратегий в зависимости от серьезности изменений:

  • Принудительное (блокирующее) обновление : если более ранняя версия приложения несовместима с вашей серверной частью или представляет угрозу безопасности, вы можете заблокировать доступ к приложению до тех пор, пока пользователь не обновит его. Если установленная версия ниже минимально необходимой, вы можете настроить приложение таким образом, чтобы отображалось диалоговое окно, которое нельзя закрыть и которое перенаправляет пользователя в магазин приложений платформы для установки последней версии.
  • Гибкое (необязательное) обновление : если обновление добавляет новые функции, улучшает производительность или исправляет незначительные ошибки, вы можете настроить приложение так, чтобы оно отображало закрываемый баннер или подсказку, предлагающую пользователям обновить приложение в удобное для них время, позволяя при этом им продолжать им пользоваться.

Шаг 1: Настройте параметры в консоли Firebase

Для управления версиями приложений определите параметры в шаблоне Remote Config :

  1. В консоли Firebase перейдите на страницу DevOps & Engagement > Remote Config > Parameters .
  2. Нажмите «Добавить параметр» (или «Создать конфигурацию», если это ваш первый параметр).
  3. Определите следующие параметры:
    • minimum_version : Строка, представляющая самую раннюю поддерживаемую версию вашего приложения (например, "2.4.0" ). Приложения, работающие с версией, меньшей этого значения, будут заблокированы до обновления.
    • latest_version (необязательно) : строка, представляющая последнюю доступную версию вашего приложения (например, "2.5.1" ). Приложения, работающие в версии от minimum_version до latest_version могут отображать необязательную рекомендацию по обновлению.
    • update_url (необязательно) : URL-адрес магазина, где пользователи могут загрузить обновление (например, страница в Google Play Store или Apple App Store).
  4. Необязательно: добавьте условия, специфичные для платформы:
    • Поскольку приложения для Android и Apple часто используют разные версии и URL-адреса хранилищ, вы можете добавить условные значения для каждой платформы в рамках одного и того же параметра.
    • Нажмите «Добавить значение для условия» > «Создать условие» . Назовите условие (например, Android App или iOS App »), выберите «Приложение» в качестве правила таргетинга и выберите свое приложение.
    • Для каждого условия платформы укажите соответствующую строку версии, а значение по умолчанию используйте в качестве запасного варианта.
  5. Нажмите «Сохранить» , а затем « Опубликовать изменения» , чтобы применить шаблон.

Шаг 2: Реализация проверок версий на стороне клиента.

На стороне клиента при запуске проверьте версию установленного приложения, сравнив её с параметрами Remote Config :

  1. Установите значения по умолчанию внутри приложения : Всегда указывайте безопасные значения по умолчанию внутри приложения в пакете вашего приложения (например, установите minimum_version равным вашей первоначальной версии приложения, например, "1.0.0" ). Эта резервная конфигурация гарантирует, что ваше приложение продолжит нормально работать, если устройство находится в автономном режиме или первоначальный запрос на получение данных завершится неудачей. Для получения рекомендаций по конкретным платформам см. раздел «Загрузка значений по умолчанию для шаблона Remote Config .
  2. Получение и активация Remote Config : получение и активация последних значений шаблона при запуске приложения.
  3. Сравнение версий : Получите активные строки minimum_version и latest_version и сравните их с текущей установленной версией приложения.

  4. Примите меры на основе сравнения версий :

    • Обязательное обновление : если current_version раньше minimum_version , отобразите полноэкранное модальное окно, которое нельзя закрыть. Отключите навигацию по остальной части приложения и добавьте кнопку, которая открывает update_url в магазине приложений платформы.
    • Предложить необязательное обновление : если current_version раньше latest_version , отобразить закрываемое диалоговое окно или уведомление, сообщающее пользователям о наличии обновления, с возможностью обновления сейчас или позже .
    • Разрешить доступ : В противном случае разрешите пользователю продолжить работу с приложением.

Передовые методы

  • Добавьте слушатель в реальном времени : когда обновления версий требуются из-за проблем с безопасностью или серьезного ухудшения пользовательского опыта, добавление слушателя Remote Config реальном времени в ваше приложение поможет гарантировать, что изменения требований к версии вступят в силу немедленно на активных устройствах, без ожидания следующего запланированного запроса или перезапуска приложения.
  • Тестирование с ограниченной группой тестировщиков : Прежде чем повышать minimum_version для всех пользователей производственной среды, протестируйте условие с ограниченной группой тестировщиков или используйте для проверки внутренних тестировщиков пользовательские свойства. Это тестирование подтвердит корректное отображение блокирующего модального окна и правильное разрешение ссылок на магазин приложений.
  • Используйте API для обновления приложений на платформе : на Android рассмотрите возможность интеграции обновлений Google Play In-App Updates вместе с проверками Remote Config , чтобы пользователи могли загружать и устанавливать обновления, не покидая ваше приложение.
  • Ознакомьтесь с контрольными списками для запуска в производство : Прочитайте контрольный список запуска Firebase и контрольный список AI Logic для запуска в производство , чтобы получить дополнительные рекомендации по подготовке вашего приложения и функций ИИ к работе в производственной среде.