Google 어시스턴트를 사용하면 Android 앱을 음성으로 제어할 수 있습니다. 어시스턴트를 사용하면 음성으로 "Hey Google, Example 앱에서 달리기 시작해 줘"와 같이 말하여 앱을 실행하고 작업을 실행하고 콘텐츠에 액세스하는 등의 작업을 할 수 있습니다.
Android 개발자는 어시스턴트의 개발 프레임워크 및 테스트 도구를 사용하여 휴대기기, 자동차, 웨어러블 기기와 같은 Android 지원 표시 경로에서 앱을 더욱 심층적으로 제어할 수 있습니다.
앱 작업
어시스턴트의 앱 작업을 통해 사용자는 음성으로 Android 앱을 실행하고 제어할 수 있습니다.
앱 작업을 사용하면 더욱 세부적인 음성 제어가 가능하므로 사용자가 앱을 실행하고 다음과 같은 작업을 실행할 수 있습니다.
- 어시스턴트에서 기능 실행: 사전 정의된 시맨틱 패턴 또는 내장 인텐트와 일치하는 사용자 쿼리에 앱 기능을 연결합니다.
- Google 표시 경로에 앱 정보 표시: 어시스턴트가 표시할 Android 위젯을 제공하여 컨텍스트를 변경하지 않고 사용자에게 인라인 답변, 간단한 확인, 간단한 상호작용을 제공합니다.
- 어시스턴트의 음성 바로가기 추천: 어시스턴트를 사용하여 사용자가 찾거나 재생할 수 있는 적절한 컨텍스트에서 작업을 사전에 추천합니다.
앱 작업은 내장 인텐트 (BII)를 사용하여 널리 사용되는 작업 카테고리에서 이러한 사용 사례를 비롯한 수십 개의 사용 사례를 지원합니다. 앱에서 BII를 지원하는 방법에 관한 자세한 내용은 이 페이지의 앱 작업 개요를 참고하세요.
멀티스크린 개발
앱 작업을 사용하여 모바일 이외의 기기 표시 경로에 음성 전달 제어를 제공할 수 있습니다. 예를 들어 Auto 사용 사례에 최적화된 BII를 사용하면 운전자는 음성으로 다음 작업을 실행할 수 있습니다.
앱 작업 개요
앱 작업을 사용하면 사용자가 음성으로 앱에서 특정 작업을 할 수 있도록 지원하여 사용자에게 앱을 더 효과적으로 제어할 수 있습니다. 사용자가 앱을 설치한 경우 "Hey Google, Example 앱에서 피자 주문해 줘"와 같이 앱 이름이 포함된 문구를 사용하여 의도를 나타내기만 하면 됩니다. 앱 작업은 사용자가 달성하려는 작업이나 원하는 정보를 표현하는 일반적인 방법을 모델링하는 BII를 지원합니다. 예를 들면 다음과 같습니다.
- 음식 주문, 차량 예약, 기타 카테고리별 작업
- 앱의 기능 열기
- 인앱 검색을 사용하여 제품 또는 콘텐츠 쿼리
앱 작업을 통해 어시스턴트는 사용자의 상황에 따라 사용자에게 음성 기능을 바로가기로 사전에 추천할 수 있습니다. 이 기능을 사용하면 사용자가 앱 작업을 쉽게 찾아서 다시 재생할 수 있습니다. 앱 작업 인앱 프로모션 SDK를 사용하여 앱에서 이러한 바로가기를 추천할 수도 있습니다.
shortcuts.xml
에서 <capability>
태그를 선언하여 앱 작업 지원을 사용 설정합니다. 기능은 BII를 사용하여 인앱 기능에 의미론적으로 액세스할 수 있는 방법을 Google에 알리고 기능에 관한 음성 지원을 사용 설정합니다.
어시스턴트는 지정된 콘텐츠나 작업으로 앱을 실행하여 사용자 인텐트를 처리합니다. 일부 사용 사례의 경우 어시스턴트 내에 표시할 Android 위젯을 지정하여 사용자 쿼리를 처리할 수 있습니다.
앱 작업은 Android 5(API 수준 21) 이상에서 지원됩니다. 사용자는 Android 휴대전화에서만 앱 작업에 액세스할 수 있습니다. Android Go의 어시스턴트는 앱 작업을 지원하지 않습니다.
앱 작업의 작동 방식
앱 작업을 통해 인앱 기능을 어시스턴트로 확장하므로 사용자가 음성으로 앱의 기능에 액세스할 수 있습니다. 사용자가 앱 작업을 호출하면 어시스턴트는 쿼리를 shortcuts.xml
리소스에 선언된 BII와 일치시켜 요청된 화면에 앱을 실행하거나 Android 위젯을 표시합니다.
Android 기능 요소를 사용하여 앱에서 BII를 선언합니다. Google Play Console을 사용하여 앱을 업로드하면 Google에서는 앱에서 선언된 기능을 등록하고 사용자가 어시스턴트에서 액세스할 수 있도록 합니다.
예를 들어 앱에서 음식 주문 기능을 제공할 수 있습니다. 사용자가 “Hey Google, Example 앱에서 피자 주문해 줘”라고 말하면 다음 단계가 발생합니다.
- 어시스턴트는 쿼리에 관한 자연어 분석을 실행하여 요청의 시맨틱을 사전 정의된 BII 패턴과 일치시킵니다. 이 경우에는
actions.intent.ORDER_MENU_ITEM
BII가 쿼리와 일치합니다. - 어시스턴트는 BII가 이전에 앱에 등록되었는지 확인하고 해당 구성을 사용하여 BII를 실행하는 방법을 결정합니다.
- 어시스턴트는 개발자가
<capability>
에 제공하는 정보를 사용하여 요청의 인앱 대상을 실행하는 Android 인텐트를 생성합니다. 어시스턴트는 쿼리 매개변수를 추출하고 이를 생성된 Android 인텐트에서 추가 항목으로 전달합니다. - 어시스턴트는 생성된 Android 인텐트를 실행하여 사용자 요청을 처리합니다. 앱에서 화면을 실행하거나 어시스턴트 내에서 위젯을 표시하도록
intent
를 구성합니다.
![사용자가 Google 어시스턴트에 쿼리를 제공하면 어시스턴트는 사용자를 위해 앱 대상을 실행하여 응답합니다.](https://developer.android.com/static/guide/app-actions/images/assistant-flow.png?hl=ko)
사용자가 작업을 완료하면 Google 바로가기 통합 라이브러리를 사용하여 작업의 동적 바로가기와 그 매개변수를 Google에 푸시하므로 어시스턴트가 상황상 적절한 때에 사용자에게 바로가기를 추천할 수 있습니다.
이 라이브러리를 사용하면 어시스턴트와 같은 Google 표시 경로에서 바로가기가 검색 및 재생될 수 있습니다. 예를 들어 사용자가 차량 공유 앱에서 요청한 목적지마다 바로가기를 Google에 푸시하여 나중에 바로가기 추천으로 빠르게 재생할 수 있습니다.
앱 작업 빌드
앱 작업은 Android 앱의 기존 기능을 기반으로 빌드되며, 구현하는 각 앱 작업의 프로세스는 유사합니다. 앱 작업은 shortcuts.xml
에서 지정한 capability
요소를 사용하여 앱의 특정 콘텐츠나 기능으로 사용자를 바로 안내합니다.
앱 작업을 빌드할 때 첫 번째 단계는 사용자가 어시스턴트에서 액세스할 수 있도록 허용할 활동을 식별하는 것입니다. 그런 다음 이 정보를 사용하여 앱 작업 BII 참조에서 가장 근접하게 일치하는 BII를 찾습니다.
BII는 사용자가 원하는 정보나 앱을 사용하여 실행하려는 작업을 표현하는 몇 가지 일반적인 방법을 모델링합니다. 예를 들어 식사 주문, 탑승 예약, 계좌 잔액 확인과 같은 작업을 위한 BII가 있을 수 있습니다. BII는 앱 작업을 시작하는 가장 좋은 방법입니다. 여러 언어로 된 사용자 쿼리의 일반적인 변형을 모델링하므로 앱을 빠르게 음성으로 사용 설정할 수 있기 때문입니다.
구현할 인앱 기능과 BII를 식별한 후에는 Android 앱에서 BII를 앱 기능에 매핑하는 shortcuts.xml
리소스 파일을 추가하거나 업데이트합니다. shortcuts.xml
에서 capability
요소로 정의된 앱 작업은 각 BII가 처리를 확인하는 방법과 추출되어 앱에 제공되는 매개변수를 설명합니다.
앱 작업 개발의 상당 부분은 BII 매개변수를 정의된 처리에 매핑하는 것입니다. 이 프로세스는 일반적으로 인앱 기능의 예상 입력을 BII의 시맨틱 매개변수에 매핑하는 형식을 취합니다.
앱 작업 테스트
개발 및 테스트 중에 Android 스튜디오용 Google 어시스턴트 플러그인을 사용하여 Google 계정용 어시스턴트의 앱 작업 미리보기를 만듭니다. 이 플러그인은 배포를 위해 제출하기 전에 앱 작업이 다양한 매개변수를 처리하는 방식을 테스트하는 데 도움이 됩니다. 테스트 도구에서 앱 작업 미리보기를 생성하고 나면 테스트 도구 창에서 직접 테스트 기기의 앱 작업을 트리거할 수 있습니다.
미디어 앱
또한 어시스턴트는 "Hey Google, 비욘세 음악 재생해 줘"와 같은 미디어 앱 명령어를 이해할 수 있는 기본 제공 기능을 제공하며 일시중지, 건너뛰기, 빨리 감기, 좋아요와 같은 미디어 컨트롤을 지원합니다.
다음 단계
앱 작업 개발자 과정에 따라 샘플 Android 앱을 사용하여 앱 작업을 빌드합니다. 그런 다음 계속해서 자체 앱용 앱 작업 빌드 가이드를 진행합니다. 앱 작업 빌드를 위한 다음과 같은 추가 리소스도 살펴볼 수 있습니다.
- GitHub에서 샘플 피트니스 Android 앱을 다운로드하여 살펴봅니다.
- r/GoogleAssistantDev: Google 어시스턴트로 작업하는 개발자를 위한 공식 Reddit 커뮤니티입니다.
- 앱 작업에 관한 프로그래밍 질문이 있는 경우 'android' 태그와 'app-actions' 태그를 사용하여 Stack Overflow에 게시물을 제출하시기 바랍니다. 게시하기 전에 질문이 주제에 관한 것인지 확인하고 좋은 질문을 하는 방법에 관한 안내를 읽어보시기 바랍니다.
- 공개 Issue Tracker에서 앱 작업 기능 관련 버그와 일반적인 문제를 신고할 수 있습니다.