Android

Чтобы протестировать ваш код и посмотреть превью карточки на устройстве Android, используйте приложение DivKit Playground. Вы можете добавить в приложение код карточки в формате JSON или открыть ссылку на него:

  1. Установите приложение DivKit Playground.

  2. Выберите demo.

  3. Добавьте карточку одним из способов:

    • вставьте код в формате JSON или ссылку на прототип карточки в поле ввода;
    • откройте ссылку из редактора DivKit Web Playground;
    • выберите файл в формате JSON на устройстве.

    Совет

    Для создания кода карточки вы можете использовать библиотеку примеров DivKit Web Playground.

  4. Чтобы посмотреть результат, нажмите кнопку show the result.

Управление состоянием данных

DivKit для Android предоставляет API для управления сохраненными данными. Используйте DivKit.reset(), чтобы удалить сохраненные переменные и DivData из хранилища.

Сброс данных

Получите общий экземпляр DivKit с помощью DivKit.getInstance(context). Чтобы сбросить данные конкретных карточек, передайте их значения DivDataTag в параметре tags. Если не передать tags или передать пустой список, сохраненные данные будут сброшены для всех карточек.

Посмотреть примеры сброса
import com.yandex.div.DivDataTag
import com.yandex.div.core.DivKit

val divKit = DivKit.getInstance(context)

// Сбросить все сохраненные данные
divKit.reset()

// Сбросить только сохраненные переменные
divKit.reset(DivKit.RESET_STORED_VARIABLES)

// Сбросить только сохраненные DivData
divKit.reset(DivKit.RESET_STORED_DIV_DATA)

// Сбросить данные с фильтрацией по тегам
divKit.reset(
    flags = DivKit.RESET_STORED_VARIABLES,
    tags = listOf(DivDataTag("tag1"), DivDataTag("tag2"))
)

// Сбросить DivData с фильтрацией по тегам
divKit.reset(
    flags = DivKit.RESET_STORED_DIV_DATA,
    tags = listOf(DivDataTag("tag1"), DivDataTag("tag2"))
)

// Комбинированный сброс с фильтрацией по тегам
divKit.reset(
    flags = DivKit.RESET_STORED_VARIABLES or DivKit.RESET_STORED_DIV_DATA,
    tags = listOf(DivDataTag("tag1"), DivDataTag("tag2"))
)

Флаги сброса:

  • RESET_ALL - сбросить сохраненные переменные и DivData (используется по умолчанию)
  • RESET_STORED_VARIABLES - сбросить только сохраненные переменные
  • RESET_STORED_DIV_DATA - сбросить только сохраненные DivData

Флаги можно комбинировать с помощью побитовой операции or в Kotlin, как показано выше.

Инициализация DivConfiguration

Для работы с изображениями в DivKit Android необходимо настроить DivImageLoader. Доступны следующие встроенные реализации:

  • CoilDivImageLoader — рекомендуется для большинства случаев использования
  • GlideDivImageLoader — альтернативная реализация на основе Glide

Оба загрузчика можно инициализировать с настройками по умолчанию, передав Android Context.

Посмотреть пример инициализации Coil
import com.yandex.div.coil.CoilDivImageLoader
import com.yandex.div.core.DivConfiguration

val imageLoader = CoilDivImageLoader(context)
val configuration = DivConfiguration.Builder(imageLoader).build()
Посмотреть пример инициализации Glide
import com.yandex.div.core.DivConfiguration
import com.yandex.div.glide.GlideDivImageLoader

val imageLoader = GlideDivImageLoader(context)
val configuration = DivConfiguration.Builder(imageLoader).build()

Узнать больше

Вы можете обсуждать интересующие вас темы в сообществе пользователей DivKit в Telegram: https://t.me/divkit_community_ru.

Репозиторий DivKit

Предыдущая
Следующая