Skip to content

In-App Web View Actions ​

В In-App Web View для коммуникации фронтенда с приложением реализована система сериализуемых действий.

Схема действий соответствует схеме действий из SDUI фреймворка DivKit.

Принцип работы ​

Фронтенд собирает список действий, конвертирует в JSON, преобразовывает в формат Base64URL и подставляет в адресную строку.

Приложение реагирует на изменение адресной строки и если там есть introvert-actions query параметр, то начинается обработка действий.

Обработчик преобразует Base64URL в JSON и последовательно выполняет поддерживаемые действия.

Если действие не поддерживается, то оно пропускается и происходит переход к следующему действию.

Поддерживаемые действия ​

В этом разделе описаны поддерживаемые действия и пример их использования.

Навигация в приложении ​

Действия используемые для навигации внутри приложения

Перейти по пути ​

Если в стеке открыта эта страница, то произойдет переход к ней

Иначе откроется новая страница по этому пути

json
{
  "url": "introvert-action://navigate-route",
  "payload": {
    "path": "<PATH>"
  }
}

Добавить страницу в стек ​

Откроется новая страница по этому пути

json
{
  "url": "introvert-action://push-route",
  "payload": {
    "path": "<PATH>"
  }
}

Закрыть Web View ​

Закроет текущую вебвью страницу

json
{
  "url": "introvert-action://close-webview"
}

Коммуникация с пользователем ​

Действия используемые для информирования пользователя

Показать снекбар ​

Покажет снекбар снизу с переданным текстом

json
{
  "url": "introvert-action://show-snackbar",
  "payload": {
    "text": "Отправили подарочный сертификат на твою почту"
  }
}

Бизнес-логика ​

Действия используемые для выполнения бизнес-логики

Проверить состояние подписки ​

Запустит обновление статуса подписки

json
{ 
  "url": "introvert-action://refresh-subscription"
}

Авторы

The avatar of contributor named as Vadim Melnikov Vadim Melnikov
The avatar of contributor named as Pavel Nochevnoy Pavel Nochevnoy
The avatar of contributor named as melvspace melvspace
The avatar of contributor named as Arutyun Gevorkyan Arutyun Gevorkyan

История