Как включить шторку ассистента

О шторке

Шторка ассистента — это выдвижная панель в интерфейсе приложения, которая отображает окно для взаимодействия с виртуальным ассистентом. Шторка может быть в развернутом или свернутом состоянии.

Развернутая (длинная) шторка ассистента занимает весь экран приложения. В этом режиме отображается и панель ассистента, и основной контент (лента ассистента, смартапы и т. д.).

Свернутая (короткая) шторка появляется в нижней части экрана приложения и занимает только часть экрана. В этом режиме основной контент ассистента не отображается, и ассистент представлен только шторкой.

Включение и настройка шторки

Чтобы включить шторку в своем приложении:

  1. Включите навигацию 2.0:
dialogConfigDependencies = object : DialogConfigDependencies {
<...>
override val hostNavigation2Availability = object : HostNavigation2Availability {
                    override val isHostNavigation2Enabled: Boolean = true
                }
}
  1. Отрегулируйте показ шторки — используйте методы showAll и hideAll:

    • fun hideAll() — полностью скрывает ассистента в хосте, закрывая уже открытые смартапы, при этом фрагмент ассистента остается в иерархии;
    • fun showAll() — включает видимость развернутой и свернутой шторки.
  2. При формировании фрагмента ассистента в FragmentLaunchParams задайте следующие параметры, если необходимо: 

    • showByDefault — должен ли фрагмент отображаться сразу как только его добавили в иерархию. Значение по умолчанию — true.
    • hideTinyOnBack — должна ли короткая шторка сворачиваться при нажатии на кнопку Назад. Значение по умолчанию — false.
    • setKeyboardPaddings — подписываться ли на изменения клавиатуры и изменять ли значения полей (паддинги) согласно этим изменениям. Если у активности не стоит флаг adjustResize или этот флаг выставлен вместе с  "android:configChanges="keyboardHidden|keyboard", значение параметра должно быть true. Значение по умолчанию — false.
  3. Для шторки укажите следующий режим: 
interface AssistantTinyPanelFeatureFlag : FeatureFlag {
    fun tinyBackgroundMode(): BackgroundMode = BackgroundMode.Gradient
    fun fullBackgroundMode(): BackgroundMode = BackgroundMode.Gradient
}

Первая функция задает тип фона для шторки ассистента, когда активен режим свернутой шторки.  Вторая функция задает тип фона для шторки ассистента, когда активен режим развернутой шторки. Варианты режимов:

  • Transparent — прозрачный задний фон;
  • Gradient — градиент под всем содержимым короткой шторки, разный градиент для разного контента;
  • SolidRounded — сплошной задний фон с закругленными сверху краями.

Действия со шторкой

Ниже описаны действия со шторкой в приложении.

Вызвать шторку

Чтобы вызвать короткую шторку, нажмите на лавашар или произнесите команду активации споттера. Чтобы вызвать длинную шторку, нажмите на значок клавиатуры.

Закрыть шторку

Короткая шторка закрывается, если:

  • вы нажали на любое место экрана, где нет короткой шторки;
  • вы смахнули шторку вниз;
  • вы не взаимодействовали с ассистентом более трех секунд после поднятия шторки.

Длинная шторка закрывается, если:

  • вы нажали на значок закрытия;
  • вы произнесли команду «Хватит»;
  • вы смахнули шторку вниз.

Переход между шторками

Чтобы перейти из короткой шторки в длинную, нажмите на значок клавиатуры или смахните вверх. После перехода история сообщений сохранится.

Переход из длинной шторки в короткую может быть:

  • автоматическим — если ответ ассистента более трех строк;
  • если вы смахнули вниз — шторка закрывается полностью.

Заметили ошибку?

Выделите текст и нажмите Ctrl + Enter, чтобы сообщить нам о ней