В shortcuts.xml в разделе Capabilities можно указать типы действий, которые пользователи могут выполнить для запуска вашего приложения и непосредственного выполнения определенной задачи. Capabilities состоит из названия действия и intent , указывающего на целевой объект в вашем приложении, который обрабатывает Intent пользователя.
Определите возможности в файле shortcuts.xml.
Элементы capability определяются в файле ресурсов shortcuts.xml в вашем проекте разработки Android-приложения. Чтобы определить элемент capability , выполните следующие действия:
- Создайте ресурс
shortcuts.xml, следуя инструкциям в разделе «Создание статических ярлыков» . Включите в описание ваших возможностей следующую необходимую информацию:
Название возможности: действие, которое должно поддерживаться в вашем приложении. Для получения информации о функциях, требующих определения возможностей, обратитесь к документации компонента.
Пункт назначения приложения: место в вашем приложении, куда запускается действие для выполнения запроса пользователя. Определяйте пункты назначения приложения с помощью элементов
intent, вложенных вcapability.Сопоставление параметров: каждый
intentможет содержать параметры, передаваемые в качествеextraданных интента.
Следующий пример демонстрирует определение возможностей в файле shortcuts.xml для actions.intent.START_EXERCISE , объекта BII, который позволяет пользователям использовать голосовые команды с помощью Ассистента для начала тренировки в фитнес-приложении:
<shortcuts xmlns:android="http://schemas.android.com/apk/res/android">
<capability android:name="actions.intent.START_EXERCISE">
<intent
android:action="android.intent.action.VIEW"
android:targetPackage="com.example.sampleApp"
android:targetClass="com.example.sampleApp.ExerciseActivity">
<parameter
android:name="exercise.name"
android:key="exerciseType"/>
</intent>
</capability>
</shortcuts>
В приведенном выше примере атрибут ` <capability> android:name ссылается на BII-объект START_EXERCISE . Если пользователь вызывает этот BII-объект, обращаясь к Ассистенту с вопросом: «Привет, Google, начни пробежку в ExampleApp», Ассистент выполняет запрос пользователя, используя информацию, предоставленную во вложенном элементе intent . В этом примере intent определяет следующие детали:
- Параметр
android:targetPackageзадает целевой пакет приложения для этого интента. - Поле
android:targetClassуказывает целевое действие:com.example.sampleApp.ExerciseActivity. -
parameterintent определяет поддержку параметра BIIexercise.nameи способ передачи значения параметра, полученного от пользователя, в качестве дополнительных данных вintent.
Свяжите ярлыки с возможностью
После определения возможности вы можете расширить ее функциональность, связав с ней статические или динамические ярлыки. Способ связывания ярлыков с capability зависит от реализуемой функции и текста запроса пользователя. Например, когда пользователь начинает пробежку в вашем приложении для отслеживания физической активности, обращаясь к Ассистенту: «Привет, Google, начни пробежку в ExampleApp», Ассистент может использовать ярлык для запуска экземпляра capability , которая определяет допустимый объект упражнения «run» для параметра exercise.name .