Matter용 Google Home 샘플 앱

Matter용 Google Home 샘플 앱

Google Home Sample App for Matter는 Google Home Mobile SDK를 사용하여 Google Home app (GHA)와 유사한 Android 앱을 만듭니다. 이 샘플 앱은 다음과 같은 기능을 제공합니다.

  • 실제 및 가상 Matter 기기를 로컬 Android 패브릭에 커미셔닝
  • 개발 패브릭에 실제 기기 및 가상 기기 커미셔닝
  • 개발 패브릭에서 기기 제어(예: 조명 켜기)
  • 멀티 관리자 기능을 사용하면 개발 패브릭의 기기를 다른 앱과 공유할 수 있으며, 반대로 다른 앱에서 공유된 기기를 개발 패브릭에 포함할 수 있습니다.
  • 개발자 유틸리티

이 가이드에서는 Sample App for Matter APK를 설치하고 이를 사용하여 Matter 기기를 위임, 제어, 공유하는 방법을 설명합니다.

소스 코드를 다운로드하고, Mobile SDK를 통합하는 방법을 알아보고, Android 스튜디오에서 화면을 맞춤설정하려면 Sample App for Matter Codelab을 사용해 보세요.

Sample App for Matter Codelab으로 이동

기본 요건

Sample App for Matter로 기기를 커미셔닝하고 제어하는 데 Google Nest Hub (2nd gen)와 같은 허브가 필요하지 않습니다.

설치

  1. Sample App for Matter GitHub 저장소의 출시 섹션으로 이동합니다. 최신 출시 버전의 경우 애셋 섹션에서 GHSAFM-version-default-debug.apk라는 APK를 찾습니다. targetcommissioner를 선택하지 마세요.

  2. Android 디버그 브리지 (adb)를 설치합니다.

    adb 설치

  3. Android 기기를 USB로 연결하고 파일 전송을 사용 설정한 후 APK를 설치합니다.

    $ adb unroot && adb install GHSAFM-version-default-debug.apk
    

기기 위탁

샘플 앱을 처음 실행하면 Sample App for Matter Codelab 링크가 포함된 대화상자가 표시됩니다. 이 메시지를 다시 표시하지 않음을 선택하면 앱의 관리 섹션에서 환경설정을 업데이트하여 언제든지 대화상자를 다시 표시할 수 있습니다.

다음 단계에서는 로컬 Android 패브릭에 Matter 기기를 추가하고 샘플 앱에만 로컬인 개발 패브릭도 추가합니다.

Matter 패브릭이란 무엇인가요?

Matter용 Google Home 샘플 앱

Matter 패브릭은 홈 네트워크의 기기 간에 서로 통신할 수 있는 공유 신뢰 도메인입니다.

기기에는 플랫폼, 앱 또는 함께 상호작용하는 기기 그룹에 해당하는 패브릭이 하나 이상 있을 수 있습니다. 패브릭에는 고유 ID가 있으며 기기는 동일한 사용자 인증 정보 집합과 인증 기관(CA)을 공유합니다. 이러한 사용자 인증 정보는 Matter 커미셔닝 중에 할당됩니다.

Matter 기기를 커미셔닝하려면 다음 단계를 완료하세요.

  1. 기기 추가 버튼을 탭하여 커미셔닝 프로세스를 시작합니다.

    기기 추가

  2. 그런 다음 제어가 Google Play services로 전송되며, 이는 Mobile SDK 호출에서 실행됩니다. 소유 증명을 설정하려면 QR 코드 스캔을 하거나 페어링 코드 사용을 탭합니다.

    QR 코드 스캔

  3. 커미셔닝이 완료되면 기기 이름을 입력한 다음 완료를 탭합니다.

이제 기기가 로컬 Android 패브릭과 개발 패브릭에 모두 연결되었습니다.

기기를 커미셔닝할 때 모든 커미셔닝 작업과 관련 화면은 Play services에서 처리합니다. 이를 통해 일관된 사용자 환경을 제공하고 민감한 권한(예: Wi-Fi 및 스레드 사용자 인증 정보)을 처리할 필요가 없습니다.

기기 제어

개발 패브릭은 샘플 앱에서 바로 Matter 기기를 제어하는 사용자 인증 정보를 만듭니다.

홈 화면에서 기기를 사용 또는 사용 중지로 전환할 수 있습니다. 기기를 탭하여 기기 세부정보에 액세스합니다.

기기 추가됨

기기 공유

기기 공유는 Matter 사양에서 다중 관리자 흐름이라고 합니다. 기기가 샘플 앱에 커미셔닝되면 다른 생태계와 쉽게 공유할 수 있습니다.

Matter 기기를 다른 생태계와 공유하려면 Android 기기에 다른 플랫폼이 설치되어 있어야 합니다. 이 외부 플랫폼은 대상 커미셔너가 됩니다. 대상 커미셔너로 사용할 수 있는 샘플 앱의 다른 인스턴스를 만들었습니다.

  1. Sample App for Matter GitHub 저장소의 출시 섹션으로 이동합니다. 최신 출시 버전의 경우 애셋 섹션에서 GHSAFM-version-targetcommissioner-debug.apk라는 APK를 찾습니다. default를 선택하지 마세요.

  2. 대상 커미셔너를 설치합니다.

    $ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apk
    
  3. 홈 화면에서 기기를 탭하여 기기 정보를 표시합니다. 공유를 탭합니다.

    기기 공유

샘플 앱은 Mobile SDK Share API를 호출하고 제어권은 다시 Play services로 이전됩니다.

공유 시트가 표시되어 기기를 페어링할 앱 또는 플랫폼을 선택할 수 있습니다. 이 화면에서는 기기를 공유하는 두 가지 방법을 제공합니다.

  1. 대상 커미셔너 앱과 공유할 설정 코드를 통해 수동으로
  2. Matter 커미셔너로 등록된 로컬 Android 앱 사용

타겟 커미셔너 앱의 라벨은 GHSAFM-TC입니다. 샘플 앱의 이 인스턴스를 탭하여 기기를 공유합니다.

그런 다음 외부 앱 (대상 커미셔너)이 기기를 자체 패브릭에 커미셔닝하는 작업을 완료합니다.

설정

홈 화면에서 설정 아이콘을 클릭합니다. 여기에서 사용자 환경설정을 업데이트하고, 도움을 받고, 앱에 대해 자세히 알아볼 수 있습니다.

설정

하프시트 알림

설정 화면에서 Matter 기기에 대한 커미셔닝 가능한 기기 사전 검색 알림을 사용 중지할 수 있습니다.

애플리케이션에서 자체 Matter 검색 또는 커미셔닝 흐름을 제공하는 경우 중단을 방지하기 위해 이러한 알림을 표시하지 않을 수 있습니다. 자세한 내용은 커미셔닝 가능한 검색 알림 표시 안함을 참고하세요.

개발자 유틸리티

설정 화면에서 개발자 유틸리티에 액세스할 수도 있습니다.

Logcat에서 기기 및 사용자 환경설정 DataStore 저장소의 콘텐츠를 검토하려면 다음 단계를 완료하세요.

  1. 로그 저장소 콘텐츠를 클릭합니다.

  2. 대화상자에서 OK를 클릭한 다음 Logcat을 확인합니다.

의견 및 도움말

Sample App for Matter를 사용한 개발 환경을 개선하는 방법에 관한 의견이나 피드백을 제출하려면 의견 양식을 작성하세요.

의견 보내기

Sample App for Matter에 문제가 있는 경우 다음 단계에 따라 환경을 확인하세요.

샘플 앱 사용에 관해 궁금한 점이 있거나 코드 버그를 발견한 경우 GitHub 저장소의 Issue Tracker에 문제를 제출할 수 있습니다.

기술적인 질문에 관해 Google의 공식 안내를 받으려면 스마트 홈 개발자 포럼을 사용하세요.

커뮤니티에서 기술 지원을 받으려면 Stack Overflow에서 google-smart-home 태그를 사용하세요.