RU EN
Пример использования Remote Config SDK от RuStore на kotlin
Документация по Remote Config SDK
SDK Remote Config — это облачный сервис, который позволяет изменять поведение и внешний вид вашего приложения, не требуя от пользователей загрузки обновления приложения. SDK инкапсулирует в себе запрос конфигурации с сервера, кэширование, фоновое обновление. Имеет удобный api для получения данных.
Ключевые особенности:
- SDK позволяет выбрать наиболее удобный механизм обновления конфигурации.
- Имеет возможность указывать процент распространения конфигурации на аудиторию.
- Для построения воронки конкретной конфигурации можно передавать дополнительную информацию. Возможно формировать конфигурации даже для конкретных пользователей.
- Имеет набор колбэков о работе SDK, которые можно использовать для аналитики.
- Имеет минимальное количество внешних зависимостей.
О примере
Приложение состоит из двух экранов:
- Выбор поведения обновления — стартовый экран при каждом запуске:
Actual,DefaultилиSnapshot(текущее помечено(selected)). Выбор сохраняется, приложение перезапускается, иRemoteConfigClientсоздаётся и инициализируется вApplication.onCreate()с выбранным поведением (интервал задаётся ресурсомrustore_update_time). КнопкаContinueоткрывает экран конфигурации. - Работа с конфигурацией:
- стрелка назад — возврат к выбору поведения;
- поля
accountиlanguage— параметры запроса конфигурации; getRemoteConfig()— получение конфигурации (содержимое выводится в лог в виде JSON);getShortSegments()— получение коротких сегментов A/B-тестов;- события SDK (включая инициализацию из
Application.onCreate) и результаты операций отображаются в логе на весь оставшийся экран; ошибки выделяются розовым фоном.
Параметры примера (rustore_app_id, rustore_device_id, rustore_account, rustore_language, rustore_update_behaviour) преднастроены в app/src/main/res/values/strings.xml. Значения, изменённые в UI (account, language, поведение), сохраняются в SharedPreferences и имеют приоритет над значениями по умолчанию из ресурсов; смена поведения применяется после перезапуска приложения.
История изменений
См. CHANGELOG.md.
Подключение
Подключите репозиторий build.gradle:
repositories {
maven {
url = uri("https://nexus-external.rustore.ru/repository/maven-rustore-exposed")
}
}
Подключение зависимости через BOM. Добавьте следующий код в свой build.gradle:
dependencies {
implementation(platform("ru.rustore.sdk:bom:2026.08.01"))
implementation("ru.rustore.sdk:remoteconfig")
}
Подключение зависимости напрямую. Добавьте следующий код в свой build.gradle:
dependencies {
implementation("ru.rustore.sdk:remoteconfig:10.5.1")
}