DRAFT. Открытие опроса в режиме WebView в приложении

DRAFT. Открытие опроса в режиме WebView в приложении

1. Query-параметры

При открытии ссылки из мобильного приложения необходимо передавать два параметра:

Параметр

Описание

Пример

Параметр

Описание

Пример

uxfeedbackWebview=true

Флаг, указывающий, что ссылка должна отображаться в WebView. Также используется для передачи события о закрытии WebView.

uxfeedbackWebview=true

uxfeedbackRatingValue=5

Флаг, задающий предвыбранное значение оценки. Может быть числом от 0 до 10.

uxfeedbackRatingValue=5


2. Что происходит, если не передать параметры?

Сценарий

Поведение

Сценарий

Поведение

uxfeedbackWebview не передан

Мы не отправим информацию о завершении прохождения опроса, и приложение не узнает, когда закрыть окно WebView.

uxfeedbackRatingValue не передан

Значение оценки не будет предвыбрано в интерфейсе (пользователь увидит пустые звёзды/смайлы/рейтинг).


3. Механика автоматического закрытия WebView

  • Если параметр uxfeedbackWebview=true передан, то при достижении пользователем финальной страницы через 1 секунду отправляется событие перехода на URL demo-app://close_action.

  • Закрытие WebView не происходит автоматически – мы только передаём событие, а реакция на него остаётся на стороне приложения.

  • Как именно приложение обрабатывает этот сигнал – определяется его логикой (например, может закрыть WebView или выполнить другую логику).

💡 Если uxfeedbackWebview не передан, событие закрытия не отправляется, и WebView остаётся открытым.


4. Пример корректного URL

https://example.com/feedback?uxfeedbackWebview=true&uxfeedbackRatingValue=5

В этом случае:

  • Форма откроется в WebView.

  • В первом найденном поле рейтинга будет предвыбрано значение 5.

  • После завершения процесса будет отправлен событие demo-app://close_action, но само закрытие зависит от приложения.


5. Дополнительные замечания

  • Если на первой странице формы нет рейтингового компонента (звёзд, смайлов и т. д.), параметр uxfeedbackRatingValue игнорируется.

  • Важно: Мы только передаём demo-app://close_action, но не контролируем, как приложение на это реагирует.