어시스턴트 공유

컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

Android 휴대전화 사용자는 "Hey Google, 이것을 제인에게 보내 줘"와 같은 음성 명령을 사용하여 다른 사용자에게 앱 콘텐츠를 공유해 달라고 Google 어시스턴트에 요청할 수 있습니다. 그러면 첫 번째 사용자의 시스템 옵션에 따라 어시스턴트가 화면의 콘텐츠 또는 기기 스크린샷을 공유 콘텐츠에 통합할 수 있습니다.

메시지가 표시되면 어시스턴트가 선택한 사진을 메시지에 삽입합니다.
그림 1. 어시스턴트가 연락처와 사진을 공유하는 모습

이 공유 방법으로도 충분하지만, 앱에서 공유된 콘텐츠를 수신하는 사용자는 앱을 다시 시작하지 않고도 콘텐츠를 볼 수 있습니다. 개발자는 onProvideAssistContent() 메서드를 구현하여 현재 포그라운드 콘텐츠에 관한 구조화된 정보를 어시스턴트에 제공할 수 있습니다.

이 프로세스는 다른 사용자와 공유되는 데이터 구조를 유지관리하는 데 도움이 됩니다. 그러면 공유된 앱 콘텐츠를 수신하는 사용자는 텍스트 형태나 스크린샷 형태 대신에 딥 링크를 통해 연결되거나 콘텐츠를 직접 수신할 수 있습니다.

앱에 공유 가능한 entity에는 onProvideAssistContent()를 구현하는 것이 좋습니다.

어시스턴트에 콘텐츠 제공

앱 작업을 호출한 후 사용자의 작업 흐름에서 최종 앱 활동에 관한 onProvideAssistContent()를 구현하기만 하면 됩니다. 예를 들어 CREATE_MONEY_TRANSFER 흐름에서 영수증을 보여주는 최종 화면에 메서드를 구현합니다. 진행 중인 화면이나 미리보기 화면에는 이를 구현할 필요가 없습니다.

AssistContentstructuredData 필드에 schema.org 어휘를 사용하여 문맥 정보를JSON-LD 객체 형태로 제공합니다. 다음 코드 스니펫은 상황별 콘텐츠를 기록하는 예를 보여줍니다.

Kotlin
override fun onProvideAssistContent(outContent: AssistContent) {
    super.onProvideAssistContent(outContent)

    // JSON-LD object based on Schema.org structured data
    outContent.structuredData = JSONObject()
            .put("@type", "MenuItem")
            .put("name", "Blueberry Crisp Iced Signature Latte")
            .put("url", "https://mysite.com/menuitems/12345a")
            .toString()
}
      
자바
@Override
public void onProvideAssistContent(AssistContent outContent) {
  super.onProvideAssistContent(outContent);

  // JSON-LD object based on Schema.org structured data
  outContent.structuredData = new JSONObject()
          .put("@type", "MenuItem")
          .put("name", "Blueberry Crisp Iced Signature Latte")
          .put("url", "https://mysite.com/menuitems/12345a")
          .toString();
}
      

entity와 관련해 최대한 많은 데이터를 제공하는 것이 좋지만 다음은 필수 필드로 제공해야 합니다.

  • @type
  • .name
  • .url(URL 주소 지정이 가능한 콘텐츠인 경우에만 필요)

onProvideAssistContent() 사용에 관한 자세한 내용은 Android 개발자 문서의 어시스턴트용 상황별 콘텐츠 최적화 가이드를 참고하세요.