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

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

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

보안 알림

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

  1. 파일 을 클릭한 다음 설정... 을 클릭합니다.
  2. Appearance & Behavior 에서 System Settings 를 펼친 다음 Passwords 를 클릭합니다.
  3. Do not save, forget passwords after restart. 를 선택합니다.
Android 스튜디오용 Google Home 플러그인

기능

어시스턴트 시뮬레이터

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

Assistant Simulator를 사용하면 쿼리를 입력하여 기기를 쉽게 제어할 수 있습니다. 예를 들어 "조명 켜 줘"와 같이 입력할 수 있습니다. Android Studio 내에서 Assistant Simulator은(는) 명령어를 기반으로 텍스트 메시지로 응답합니다. 예: "알겠습니다. 조명을 켜겠습니다."

Assistant Simulator로 테스트

Cloud Logging 보기

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

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

Cloud Logging 뷰

일괄 발화

Assistant Simulator 단일 발화에 대한 응답은 결정적이지 않습니다. 예를 들어 응답은 다음 문구 중 하나일 수 있습니다.

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

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

Home Graph 뷰어

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

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

adb 로그 뷰어는 Matter 기기 로그 파일, Google Home 로그, Android 로그와 같은 로그 파일을 보고 분석하는 도구입니다.

설치

Google Home Plugin을(를) Android Studio에 설치하려면 다음 단계를 따르세요.

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

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

설정

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

Google 계정으로 로그인

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

  1. Google Home 탭을 Android 스튜디오 창의 왼쪽 세로 탭 열에서 클릭합니다.Android Studio

  2. Sign in with 에서 Google 을 클릭하여 브라우저를 실행합니다.

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

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

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

이제 로그아웃 옵션과 함께 로그인됩니다.

클라우드 프로젝트 선택

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

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

프로젝트 선택

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

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

Assistant Simulator을(를) Android Studio에서 열려면 Google Home Plugin 패널에서 발화 패널을(를) 클릭합니다.

발화 패널 열기

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

쿼리 입력 및 응답 수집

Assistant Simulator과 상호작용하려면 쿼리를 입력하고 Enter 키를 누릅니다.

쿼리 끝에 있는 다시 보내기 아이콘을 클릭하여 쿼리를 다시 보낼 수 있습니다.

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

어시스턴트 시뮬레이터로 발화 다시 재생

저장 저장 을 클릭하여 쿼리와 응답을 저장합니다. 이 응답은 발화 패널에 입력했습니다. 상호작용은 다음 형식으로 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 패널에서 발화 파일을 클릭하여 저장된 JSON 파일을 새 탭에서 엽니다. Select Path 에서 파일 또는 폴더를 선택할 수 있습니다. 폴더를 선택하면 CollectTest 가 해당 폴더의 모든 발화 .json 파일에서 작동합니다.

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

상태 표시줄 에는 마지막 테스트 결과 (해당하는 경우), 파일이 수집되었는지 나타내는 노란색 또는 녹색 점, 발화 .json 파일 경로가 표시됩니다. 목차 Collect를 클릭하면 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 Logs 도구 창에서 프로젝트 탭을 열려면 Cloud Logs Google Home Plugin 패널에서 클릭합니다. 각 프로젝트에 대해 별도의 Cloud Log 탭을 열 수 있습니다.

Cloud Logging 탭

검색어

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

Cloud Logging 쿼리

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

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"

날짜 및 시간 쿼리

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

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

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

심각도 수준

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

쿼리 결과

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

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

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

Cloud Logging 보기

Home Graph 보기 및 테스트 실행

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

캐시된 새로고침을 클릭하여 선택한 프로젝트와 연결된 기기의 기기 이름, 기기 ID, 기기 유형을 표시합니다. 별도의 프로젝트에 대해 여러 Google Home Graph 패널을 열 수 있습니다.

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

홈 그래프 JSON 페이로드

ExpandCollapse 를 사용하여 기기의 JSON 페이로드를 표시하고 숨길 수도 있습니다.

홈 그래프 JSON 펼치기 및 접기

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

홈 그래프 실행 테스트

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

홈 그래프 완료된 테스트

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

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

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

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

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

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

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

Adb 로그 뷰어

리소스 및 의견

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

Google Home 플러그인으로 개발 환경을 개선할 수 있는 방법에 관한 의견이나 의견을 제출하려면 Google Home Plugin 의견을 클릭합니다.

의견 보내기