바로가기에 기능 추가

shortcuts.xml의 기능을 사용하면 사용자가 할 수 있는 작업 유형을 선언할 수 있습니다. 특정 작업을 직접 수행할 수 있습니다.

예를 들어 Google 어시스턴트 앱 작업은 기능을 사용하여 개발자가 인앱 기능을 내장 인텐트 (BII)로 확장하여 사용자가 활성화할 수 있도록 지원 음성 명령으로 이러한 기능을 제어할 수 있습니다. 기능은 작업의 이름과, 앱에서 사용자 인텐트를 결정하는 대상을 타겟팅하는 intent로 구성됩니다.

shortcuts.xml에서 기능 정의하기

Android 앱 개발 프로젝트의 shortcuts.xml 리소스 파일에서 capability 요소를 정의할 수 있습니다. capability 요소를 정의하려면 다음을 실행합니다. 있습니다.

  1. 만들기의 안내에 따라 shortcuts.xml 리소스를 만듭니다. 정적 바로가기
  2. 기능에 다음과 같은 필수 정보를 포함합니다.

    • 기능 이름: 앱에서 지원할 작업입니다. 다음을 참고하세요. 기능이 필요한 기능에 대한 구성요소 문서 정의할 수 있습니다 앱 작업 음성 지원 명령은 BII Action ID를 사용합니다. 기능 이름은 BII 참조에서 확인할 수 있습니다. 예를 들어 GET_THING BII는 Action IDactions.intent.GET_THING로 나열합니다.

    • 앱 대상: 작업이 실행되는 앱의 대상 사용자 요청을 이행할 수 있습니다 capability 내에 중첩된 intent 요소를 사용하여 앱 대상을 정의합니다.

    • 매개변수 매핑:intent에는 다음과 같은 매개변수가 포함될 수 있음 인텐트의 extra 데이터로 전달됩니다. 예를 들어 각 앱 작업 BII는 사용자가 검색어에 대해 자주 제공하는 정보를 나타내는 필드가 포함됩니다. BII를 트리거합니다.

다음 예는 사용자가 음성 명령으로 어시스턴트를 사용하여 피트니스 앱에서 운동을 시작하도록 지원하는 BII인 actions.intent.START_EXERCISE에 관한 shortcuts.xml의 기능 정의를 보여줍니다.

<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 속성은 START_EXERCISE BII를 가리킵니다. 사용자가 어시스턴트에게 "Hey Google, ExampleApp에서 달리기 시작해 줘"라고 요청하여 이 BII를 호출하면 어시스턴트는 중첩된 intent 요소에 제공된 정보를 사용하여 사용자 요청을 처리합니다. 이 샘플의 intent는 다음 세부정보를 정의합니다.

  • android:targetPackage는 이 인텐트의 타겟 애플리케이션 패키지를 설정합니다.
  • android:targetClass 필드는 대상 활동 com.example.sampleApp.ExerciseActivity를 지정합니다.
  • 인텐트 parameter는 BII 매개변수 exercise.name에 관한 지원을 선언하고, intent의 추가 데이터로 사용자에게서 수집한 매개변수 값을 전달할 방법을 선언합니다.

바로가기에 기능 연결하기

기능을 정의한 후에는 다음을 연결하여 기능을 확장할 수 있습니다. 정적 또는 동적 바로가기를 함께 사용할 수 있습니다 바로가기가 capability에 연결되는 방식 구현 중인 기능과 사용자의 요청에 따라 다릅니다. 예를 들어 사용자가 피트니스 추적에서 달리기를 시작할 때 어시스턴트에게 "Hey Google, ExampleApp에서 달리기 시작해 줘"라고 요청하여 앱을 말합니다. 어시스턴트 바로가기를 사용하여 유효한 capability '달리기' 운동 항목 (exercise.name 매개변수의 경우)

앱 작업에 바로가기를 연결하는 방법에 관한 자세한 내용은 앱 작업 개요를 참고하세요.