Удаленная настройка — это метод разработки программного обеспечения, который позволяет изменять определенные функции приложения (в основном мобильного) удаленно, без необходимости запускать крупное обновление или развертывать новую версию приложения.
Для этой цели используется специальный интерфейс, который позволяет задавать параметры и устанавливать новые значения этих параметров непосредственно в самом приложении. В конце процесса новые параметры конфигурации приложения изменяются с удаленного сервера. Новые значения могут автоматически добавляться при следующем запуске приложения пользователем.
Удаленная настройка (конфигурация) очень полезна, так как позволяет вносить изменения в приложение, минуя долгий процесс утверждения обновлений в онлайн-магазинах приложений, таких как App Store или Google Play.
Одной из основных особенностей удаленной конфигурации является то, что она может ограничивать доступ к приложению в зависимости от определенных критериев пользователя, таких как возраст или местоположение.
Кроме того, эта техника позволяет изменять доступность функционала приложения, предоставляя разные значения для разных пользователей. Это означает, что одни пользователи могут получать данные или дополнительный контент, в то время как другие продолжают работать с устаревшей версией приложения.
Все эти манипуляции выполняются с помощью так называемых флагов функций (feature flags). Флаги функций помогают сохранять новый контент и включать или отключать его удаленно в зависимости от данных и профиля пользователя. Флаги функций — одни из самых распространенных инструментов в мобильной разработке.
Удаленная настройка также может быть полезна для предоставления персонализированного контента, так как она позволяет быстро предоставить новый контент в соответствии с предпочтениями клиентов.
Метод удаленной настройки использует облачные сервисы. Наиболее известные и надежные из них:
- Salesforce
- NetSuite
- Namely
Все эти сервисы работают в разных областях, от обмена сообщениями до управления бизнесом и человеческими ресурсами, и позволяют вносить изменения в приложение без масштабного обновления.
А безопасна ли удаленная настройка?
Безопасность этих методов зависит от системы, которую использует разработчик или администратор. Одним из самых популярных инструментов удаленной настройки является Firebase, который предоставляет возможность быстро менять информацию. Однако даже Google предупреждает, что разработчик и заказчик не должны хранить данные в Remote Config, так как это может быть опасно для безопасности приложения: адреса и ключи Firebase могут изменяться, и информация может быть украдена сторонним пользователем.
Поэтому в управлении удаленной настройкой существует практика добавления дополнительных уровней безопасности для авторизации пользователя.