Действия
Панель Interactions позволяет задать, как элементы флоу реагируют на события — касания, появление элементов, отправку форм. Для каждого события можно назначить одно или несколько действий: переход между экранами, показ или скрытие элементов, открытие URL, установка переменных и многое другое. Используйте условия, чтобы настраивать флоу на основе данных пользователя.
Каждое взаимодействие строится по цепочке из трёх частей:
- Element: Компонент экрана, с которого начинается взаимодействие, — кнопка, вариант ответа в квизе, поле ввода или любой другой элемент.
- Trigger: Событие, запускающее логику, — нажатие, появление элемента или отправка формы.
- Action: Задача, которую выполняет флоу в ответ на событие. Один триггер может последовательно запускать несколько действий.
Настройте взаимодействия
Чтобы настроить взаимодействие:
- Выберите элемент на экране или в панели Layers.
- Справа переключитесь на панель Interactions и нажмите Add trigger.
- В разделе Button triggers выберите тип триггера.
- Нажмите Add action, кликните по названию действия и выберите тип действия из выпадающего списка в окне Edit action.
- Настройте свойства действия в зависимости от выбранного типа действия.
- При необходимости нажмите Add action, чтобы добавить ещё действия для того же триггера.
Типы триггеров
На данный момент во флоу доступны следующие триггеры:
- On tap: Запускает действие по нажатию на элемент. Самый распространённый триггер; используется главным образом для навигации между экранами.
- On screen appear: Запускает действие сразу после загрузки экрана. Используйте его, чтобы запустить анимацию или зафиксировать просмотр при открытии экрана.
Типы действий
Перейти на экран
Это основное действие для перемещения пользователей между экранами. Оно переводит пользователя на указанный экран назначения.
Для этого действия нужно только указать экран назначения. Если вы хотите настроить динамическую навигацию, смотрите Навигация и ветвление или раздел Условные действия.
Navigate to screen всегда должен быть последним действием в списке. Любое действие, размещённое после него (например, «Установить переменную»), может не выполниться, поскольку приложение уже сменило экран.
Назад
Возвращает пользователя на предыдущий экран в истории навигации, а не на предыдущий экран в последовательности.
Открыть URL
Используйте встроенные ссылки для добавления ссылок в текст.
Открывает указанный веб-адрес. Используйте это действие, чтобы отправить пользователей на веб-страницы, статьи или профили в социальных сетях за пределами нативных экранов вашего приложения. Для этого действия можно настроить два параметра:
- URL address: Укажите URL-адрес. Также его можно сделать динамическим — например, чтобы направлять пользователей на разные страницы в зависимости от их ответа в квизе или введённых данных. Для этого нажмите
и выберите нужную переменную. - Open in external browser: Укажите, где открывать внешние ссылки. По умолчанию они открываются во встроенном браузере, чтобы пользователь оставался в приложении. Установите флажок Open in external browser, если хотите открывать ссылки во внешнем браузере.
Закрыть флоу
Закрывает текущий флоу.
Показ/скрытие элементов
Показывает или скрывает конкретный элемент на экране.
Это действие переопределяет начальное состояние, заданное в Visibility в панели Design. Если Visibility установлено в Hide, действие Show сделает элемент видимым.
Действие Show или Hide без указанного целевого элемента блокирует предпросмотр и публикацию. Выберите цель или удалите действие.
Показать уведомление
Отображает нативное системное всплывающее окно. Чтобы продолжить, пользователь должен нажать Ok.
Для уведомлений необходимо задать Title и Message. В обоих полях можно использовать переменные, чтобы сделать контент динамическим. Для этого нажмите
и выберите нужную переменную.
Действие Show alert с пустой или незаполненной конфигурацией блокирует предпросмотр и публикацию. Заполните оба поля или удалите это действие.
Задать переменную
Обновляет значение переменной во флоу. Перед добавлением этого действия создайте переменные на панели Variables слева (см. Переменные).
Нажмите Add variable и задайте столько переменных и их значений, сколько нужно.
Действие Set variable без назначения блокирует предпросмотр и публикацию. Настройте хотя бы одно назначение или удалите это действие.
Покупка
Запускает флоу покупки прямо из кнопки или взаимодействия в вашем онбординге. Используйте это, чтобы пользователи могли оформить подписку или купить продукт, не покидая флоу. Для этого действия можно настроить два режима:
- In-app store: Инициирует нативную покупку. Укажите в поле Product конкретный продукт или
products.selectedProduct, чтобы использовать выбор пользователя на экране. - Web payment: Отправляет пользователя на веб-пейвол вместо инициации нативной покупки. Используйте этот режим, когда транзакция должна обрабатываться вне приложения, например для веб-подписок.
Действие Purchase без указания Product или Web Paywall URL блокирует предпросмотр и публикацию. Назначьте цель или удалите это действие.
Пользовательское действие
Запускает именованное пользовательское действие, которое обрабатывается кодом вашего приложения. Используйте этот тип, когда встроенные типы действий не подходят — например, для запуска внутреннего события, применения скидки или отображения нативного экрана.
Чтобы настроить пользовательское действие:
- В окне Edit action укажите Action ID — строку, которую ваше приложение будет распознавать (например,
show_discount). - В коде приложения реализуйте обработчик для этого идентификатора действия. Подробности реализации смотрите в разделе Обработка действий пейвола.
Custom-действие без Action ID блокирует предпросмотр и публикацию. Задайте Action ID или удалите это действие.
Условные действия
Используйте условные действия, чтобы разделить флоу на разные ветки в зависимости от данных пользователя.
Вот несколько распространённых сценариев:
- На экране есть квиз, и вы хотите отправлять пользователей на разные экраны в зависимости от их ответов. В этом случае добавьте условное действие к кнопке.
- Вы хотите предлагать разные продукты и офферы разным группам пользователей. Разместите их на отдельных экранах и настройте условия для кнопки навигации.
- Вы хотите пропускать определённые шаги для пользователей, которые уже прошли обучение в предыдущей сессии. Условные действия работают как цепочка if / else-if / else. Приложение читает правила сверху вниз и останавливается на первом совпадении:
- IF: Флоу проверяет основное условие.
- Условие истинно? Флоу немедленно выполняет действия THEN и останавливается.
- Условие ложно? Флоу переходит к следующему разделу.
- ELSE IF: Здесь можно добавить дополнительные проверки (например, «Если не Premium, находится ли пользователь на Trial?»).
- ELSE (Фолбэк): Если ни одно из приведённых выше правил не сработало, флоу выполняет действия в этом финальном разделе.
- Если правило добавлено, но для него не задано действие, совпадение с условием не приводит ни к чему.
- Незаполненное правило (без оператора или значения) блокирует предпросмотр и публикацию.
Для каждого правила выберите переменную для проверки и действие для выполнения. Можно задать несколько действий для одного правила.
Флоу выполняет только одно правило — первое совпавшее. Если нужно выполнить одновременно IF и ELSE IF, добавьте оба действия в IF.
Чтобы узнать, как сделать элементы выбираемыми и организовать их в группы для использования в условиях, см. Выбираемые элементы и группы.
Устранение неполадок
Любое действие с незаполненными обязательными полями блокирует предпросмотр и публикацию. Полный список см. в разделе Сохранение и публикация флоу.