Android 스튜디오용 Google Home 플러그인

Google Home Plugin for Android Studio는 Google Home Platform 개발자를 위해 설계 및 제작되었습니다. 이 플러그인을 사용하면 Google Assistant Simulator, Cloud Logging 및 기타 도구에 액세스하여 스마트 홈 개발 프로세스를 간소화할 수 있습니다.

Android 스튜디오용 Google Home 플러그인

보안 알림

Android Studio이 보안 비밀과 비밀번호를 저장하지 못하도록 하려면 다음 단계를 완료하세요.

  1. 파일설정...을 차례로 클릭합니다.
  2. Appearance & Behavior에서 System Settings를 펼친 후 Passwords를 클릭합니다.
  3. 저장 안함, 다시 시작한 후 비밀번호 삭제를 선택합니다.
Android 스튜디오용 Google Home 플러그인

기능

어시스턴트 시뮬레이터

스마트 홈 기기가 Google Home 생태계에서 제대로 작동하는지 테스트하려면 Android Studio를 종료하지 않고 언제든지 Assistant Simulator와 상호작용하면 됩니다.

Actions on Google Console 콘솔에 제공된 기존 어시스턴트 시뮬레이터와 마찬가지로 Assistant Simulator를 사용하면 "조명 켜 줘"와 같이 쿼리를 입력하여 기기를 쉽게 제어할 수 있습니다. Android Studio 내에서 Assistant Simulator는 명령어(예: "Hey 켜 줘")에 따라 문자 메시지로 응답합니다.

어시스턴트 시뮬레이터로 테스트

Cloud Logging 보기

Google Cloud Logging: 작업의 사용에 관한 유용한 정보를 제공하는 디버깅 정보와 주요 측정항목을 제공합니다. 개발을 간소화하기 위해 Google Home Plugin는 문제 해결 중에 코드 바로 옆에 실시간 Cloud Logging 메시지를 표시합니다.

실시간 로그를 표시하거나 기간을 선택할 수 있습니다.

Cloud Logging 뷰

일괄 발화

단일 발화에 대한 Assistant Simulator 응답은 확정적이지 않습니다. 예를 들어 응답은 다음과 같은 구문이 될 수 있습니다.

  • 알겠습니다. 조명 2개를 켭니다.
  • 알겠습니다. 조명 2개를 켭니다.
  • 알겠습니다. 조명 2개를 켭니다.
  • 알겠습니다. 조명 2개를 켭니다.

자동 테스트를 실행하고 Google 통합이 이러한 다양한 응답과 함께 어떻게 작동하는지 확인하려면 발화 스크립트를 실행하여 Assistant Simulator에 일괄 발화를 전송하면 됩니다. 스크립트가 저장되면 응답을 수집하고 쿼리에 대해 여러 테스트를 실행할 수 있습니다.

Home 그래프 뷰어

Home Graph Viewer를 사용하면 기기의 상태를 표시하고 브라우저에서 Google Home 테스트 모음을 실행할 수 있습니다.

Android 디버그 브리지 (adb) 로그 뷰어

Adb 로그 뷰어는 로그 파일(예: Matter 기기 로그 파일, Google Home 로그, Android 로그)을 확인하고 분석하는 도구입니다.

설치

Android StudioGoogle Home Plugin를 설치하려면 다음 단계를 따르세요.

  1. Android Studio를 다운로드하거나 업데이트하세요. Android 스튜디오 다운로드
  2. File > Settings (MacOS의 경우 Android Studio > Preferences)로 이동합니다.
  3. Plugins 섹션에서 Marketplace로 이동하여 google home을 검색합니다.
  4. 도구를 설치하고 Android Studio를 다시 시작합니다.

JetBrains Marketplace에서 바로 플러그인을 다운로드할 수도 있습니다.

설정

플러그인을 설치한 후 Assistant Simulator을 사용하고 Cloud Logging을 보려면 먼저 다음 단계를 완료해야 합니다.

Google 계정으로 로그인

Google Home 패널에서 개발자 계정에 로그인하여 Android Studio이(가) 사용자를 대신하여 Google 서비스와 통신할 수 있도록 승인할 수 있습니다.

  1. Android Studio 창 왼쪽에 있는 세로 탭 열에서 Google Home 탭을 클릭합니다.

  2. 다음 계정으로 로그인에서 Google을 클릭하여 브라우저를 실행합니다.

    Android 스튜디오 Google 로그인
  3. 스마트 홈 기기와 연결된 계정을 선택합니다.

  4. Google 계정으로 로그인 승인 페이지에서 허용을 클릭합니다.

  5. 브라우저 창을 닫고 Android Studio로 돌아갑니다.

이제 로그인되며 로그아웃할 수 있습니다.

Cloud 프로젝트 선택

로그인한 후 드롭다운에서 Project를 선택합니다. 프로젝트 목록을 필터링하려면 필터 표현식(예: matter)을 입력한 후 Enter를 누릅니다.

프로젝트 드롭다운은 필터를 기반으로 처음 100개의 프로젝트를 로드합니다. Android Studio를 종료해도 선택사항이 유지됩니다.

프로젝트 선택

프로젝트 필터에 대한 도움말은 Google Cloud 참조의 쿼리 매개변수를 참조하세요.

어시스턴트 시뮬레이터 사용

Android Studio에서 Assistant Simulator을 열려면 Google Home Plugin 패널에서 Utterances Panel을 클릭합니다.

발언 패널 열기

Assistant Simulator에 쿼리를 보내는 방법에는 여러 가지가 있습니다. 다음으로 각 옵션을 살펴보겠습니다.

쿼리 입력 및 응답 수집

Assistant Simulator와 상호작용하려면 쿼리를 입력하고 Enter 키를 누르세요.

쿼리 끝에 있는 재전송 아이콘을 클릭하여 쿼리를 다시 전송할 수 있습니다.

쿼리를 하나 이상 제출한 후 다시 재생을 클릭하여 쿼리를 다시 실행하고 응답을 확인합니다. Utterances 패널은 저장된 캐시의 쿼리 및 응답을 추적합니다. 다시 재생은 이 내부 캐시에 새 응답만 추가하며, 버튼을 클릭할 때마다 쿼리가 중복되지 않습니다.

어시스턴트 시뮬레이터로 발음 다시보기

저장을 클릭하여 Utterances 패널에 입력한 쿼리 및 응답을 저장합니다. 상호작용은 다음 형식의 JSON으로 변환됩니다.

  • ask: 사용자의 쿼리입니다.
  • answers: 가능한 Assistant Simulator 응답의 배열입니다.

이 JSON 파일은 Android Studio에서 수정할 수 있습니다.

{
  "collected": false,
  "lines": [
    {
      "ask": "turn lights on",
      "answers": [
        "OK, turning 2 lights on.",
        "Sure, turning on 2 lights."
      ]
    }
  ]
}

일괄 응답 수집

Google Home Plugin 패널에서 Utterances File을 클릭하여 저장된 JSON 파일을 새 탭에서 엽니다. 경로 선택에서 파일 또는 폴더를 선택할 수 있습니다. 폴더를 선택하면 CollectTest가 해당 폴더의 모든 발화 .json 파일에서 작동합니다.

동일한 파일 또는 다른 파일의 여러 탭을 열 수 있습니다(예: lights, lights(1), plug).

상태 표시줄에는 마지막 테스트 결과 (해당하는 경우), 파일이 수집되었는지 나타내는 노란색 또는 녹색 점, 음성 .json 파일 경로가 표시됩니다. 수집을 클릭하면 Assistant Simulator에서 쿼리를 실행합니다. 새 응답이 수집되면 알림이 전송되며 쿼리가 처리되는 동안 상태 표시줄에 카운터가 표시됩니다.

어시스턴트 시뮬레이터로 발언 수집

Collect가 완료되면 상태 표시줄.json 경로 앞에 녹색 체크표시로 업데이트되고 발화 파일이 가능한 응답으로 채워집니다.

어시스턴트 시뮬레이터로 발언 수집
{
  "collected": true,
  "lines": [
    {
      "ask": "turn lights on",
      "answers": [
        "OK, turning 2 lights on.",
        "Sure, turning on 2 lights.",
        "Sure, turning 2 lights on.",
        "Got it, turning 2 lights on.",
        "Alright, turning on 2 lights.",
        "OK, turning on 2 lights.",
        "Got it, turning on 2 lights.",
        "Alright, turning 2 lights on."
      ]
    }
  ]
}

수집을 조기에 중지하면 .json 경로가 수집됨으로 표시되지 않습니다.

일괄 발화 테스트

응답을 수집했으면 테스트를 클릭하여 쿼리를 재생하고 응답과 로그를 확인합니다. 일괄 발화를 테스트할 때 Assistant Simulator는 JSON 파일에 저장된 응답을 예상합니다. 테스트에서 수집되지 않은 응답을 반환하면 다음 응답과 비슷한 알림이 수신됩니다.

Expected one of: "Got it, turning on 2 lights."

어시스턴트 시뮬레이터로 발화 실행

이 시나리오는 테스트가 실패했음을 나타냅니다. 그렇지 않으면 Assistant Simulator가 각 쿼리를 실행하고 응답을 반환합니다. 테스트가 성공하면 검사가 상태 표시줄에 표시됩니다.

어시스턴트 시뮬레이터로 발화 실행

Cloud Logging 보기

Cloud 로그 도구 창에서 프로젝트 탭을 열려면 Google Home Plugin 패널에서 Cloud 로그를 클릭합니다. 프로젝트마다 별도의 Cloud 로그 탭을 열 수 있습니다.

Cloud Logging 탭

검색어

선택한 프로젝트에서 쿼리 필드를 사용하여 로그를 필터링할 수도 있습니다. 예를 들어 light 키워드에 대한 로그를 필터링하려면 다음을 실행합니다.

Cloud Logging 쿼리

QL 사용을 선택하여 Logging 쿼리 언어를 사용합니다.

Cloud Logging 쿼리 언어

다음은 시작하는 데 도움이 되는 QL 쿼리의 몇 가지 예시입니다.

severity = (DEBUG OR INFO OR NOTICE OR WARNING OR ERROR OR CRITICAL OR ALERT OR EMERGENCY) AND resource.type="assistant_action_project" AND timestamp > "2022-04-07T00:40:18Z"
jsonPayload.executionLog.executionResults.actionResults.action.trait = "TRAIT_ON_OFF"
jsonPayload.executionLog.executionResults.actionResults.action.actionType = "ONOFF_ON"

날짜 및 시간 쿼리

날짜별 로그 쿼리도 선택사항이며 이후이전을 클릭하여 사용 설정할 수 있습니다. 제공된 텍스트 필드(예: 5/11/22, 12:37 PM)에 날짜 및 시간 형식을 입력하거나 날짜 선택 도구 를 사용하여 날짜를 선택한 후 텍스트 필드에 시간을 입력할 수 있습니다.

  • 5/1/22 이후의 날짜를 선택하려면 이후를 선택하고 날짜 아이콘 을 클릭합니다.
  • 5/1/22 이전의 날짜를 선택하려면 이전을 선택하고 날짜 아이콘 을 클릭합니다.
  • 5/1/22~6/30/22 사이의 날짜를 선택하려면 이전이후를 선택하고 날짜 아이콘 에서 날짜를 선택합니다.

실시간을 선택하여 실시간 프로젝트 로그를 가져옵니다. 실시간 피드를 종료하려면 중지를 클릭하세요.

심각도 수준

드롭다운에서 최소 심각도를 선택할 수도 있습니다.

쿼리 결과

가져오기를 클릭하여 쿼리 매개변수를 제출합니다.

로그가 로드되면 레코드 를 클릭하여 전체 JSON 페이로드를 확장합니다. 를 다시 클릭하면 전체 메시지가 표시됩니다.

필요한 경우 필터 상자에 키워드를 입력하여 로그 결과의 범위를 좁힐 수 있습니다. x를 클릭하여 필터를 삭제하고 원래 가져오기 결과로 돌아갑니다.

Cloud Logging 보기

홈 그래프 보기 및 테스트 실행

기기를 나열하려면 Google Home Plugin 패널에서 Home Graph를 선택합니다.

Refresh를 클릭하여 선택한 프로젝트와 연결된 기기의 기기 이름, 기기 ID, 기기 유형을 표시합니다. 개별 프로젝트에 여러 Google Home Graph 패널을 열어 둘 수 있습니다.

기기가 로드되면 레코드 를 클릭하여 전체 JSON 페이로드를 확장합니다.

Home 그래프 JSON 페이로드

펼치기접기를 사용하여 기기의 JSON 페이로드를 표시하거나 숨길 수도 있습니다.

Home 그래프 JSON 펼치기 및 접기

특정 기기의 테스트 모음을 실행하려면 Test를 클릭합니다. 이렇게 하면 기기가 선택되고 테스트할 준비가 된 상태로 브라우저에 테스트 모음이 실행됩니다. 시작을 클릭하고 테스트 결과를 기다립니다.

Home 그래프 달리기 테스트

테스트가 완료되면 테스트 세부정보를 확인하고 로그를 볼 수 있습니다.

Home 그래프 완료된 테스트

Android 디버그 브리지 (adb) 로그 뷰어

Adb 로그 도구 창에서 프로젝트 탭을 열려면 왼쪽의 Google Home 플러그인 툴바에서 Adb 로그 명령어를 클릭합니다. 각 로그 파일에 대해 별도의 Adb 로그 탭을 열 수 있습니다. 탭을 삭제하려면 아이콘을 클릭합니다.

선택 필드를 사용하여 보려는 특정 로깅 구성요소를 선택하고 심각도 드롭다운을 사용하여 로그 심각도가 일치하는 항목만 표시합니다.

선택한 adb 로그의 경우 선택사항인 대소문자 구분 또는 Regex 수정자와 함께 필터 필드를 사용하여 로그 항목을 필터링할 수 있습니다.

또한 다음을 수행할 수 있습니다.

  • 찾기 필드와 다음 찾기 ( 아이콘) 및 이전 찾기 ( 아이콘) 명령어를 사용하여 특정 항목을 찾습니다.
  • 대소문자 구분 또는 Regex 수정자(선택사항)를 사용합니다.
  • 행으로 이동: 로그에서 지정된 줄 (숫자 기준)으로 이동합니다.

줄 번호가 추가된 로그 줄을 보려면 번호 매기기를 선택합니다. 원시 로그 항목을 보려면 Raw를 선택합니다.

Adb 로그 뷰어

리소스 및 의견

개발자 도구 및 리소스 목록을 보려면 리소스를 클릭합니다.

Google Home Plugin의 개발 환경을 개선할 수 있는 방법에 관한 의견이나 의견을 제출하려면 Feedback을 클릭하세요.

의견 보내기