You are looking for information, articles, knowledge about the topic nail salons open on sunday near me 기기 연결 on Google, you do not find the information you need! Here are the best content compiled and compiled by the https://toplist.maxfit.vn team, along with other related topics such as: 기기 연결 기기설정, OK Google 기기 설정, 구글 기기연결, 기기연결관리, 주변 기기 설정, 기기설정 목록, 아이폰 Ok Google 기기 설정, 기기설정앱
Android 기기 연결 방법 | Android Developers
- Article author: developer.android.com
- Reviews from users: 43103 Ratings
- Top rated: 4.4
- Lowest rated: 1
- Summary of article content: Articles about Android 기기 연결 방법 | Android Developers 이 Codelab에서는 Andro 스튜디오의 앱을 실제 Andro 기기에 연결하는 방법을 알아봅니다. 케이블이나 Wi-Fi를 통해 기기를 연결할 수 있습니다. …
- Most searched keywords: Whether you are looking for Android 기기 연결 방법 | Android Developers 이 Codelab에서는 Andro 스튜디오의 앱을 실제 Andro 기기에 연결하는 방법을 알아봅니다. 케이블이나 Wi-Fi를 통해 기기를 연결할 수 있습니다. Android 스튜디오의 앱을 실제 Android 기기에 연결하는 방법을 알아보세요.
- Table of Contents:
1 시작하기 전에
기본 요건
학습할 내용
필요한 항목
2 code-along 동영상 시청(선택사항)
3 USB 디버깅 사용 설정
Google USB 드라이버 설치(Windows에만 적용)
4 케이블을 통해 Android 기기에서 앱 실행
5 Wi-Fi를 통해 Android 기기에서 앱 실행
시작하기
기기 페어링
6 문제 해결
7 결론
요약
자세히 알아보기
기기 ì°ê²° ì¤ì í기
- Article author: webmanual.genesis.com
- Reviews from users: 14826 Ratings
- Top rated: 4.6
- Lowest rated: 1
- Summary of article content: Articles about 기기 ì°ê²° ì¤ì í기 블루투스 기기 목록을 선택하면 기기를 연결하거나 연결을 해제합니다. 2 블루투스 핸즈프리/블루투스 오디오 연결 상태. 연결된 블루투스 핸즈프리 또는 블루투스 오디오 … …
- Most searched keywords: Whether you are looking for 기기 ì°ê²° ì¤ì í기 블루투스 기기 목록을 선택하면 기기를 연결하거나 연결을 해제합니다. 2 블루투스 핸즈프리/블루투스 오디오 연결 상태. 연결된 블루투스 핸즈프리 또는 블루투스 오디오 …
- Table of Contents:
기기 ì°ê²° ì¤ì íë©´ì¼ë¡ ì´ëí기
ë¸ë£¨í¬ì¤ ì°ê²°
ë©ìì§ ìì ì림
ë©ìì§ ìì íí° ì¤ì
ìë íì ë©ìì§
íë¼ì´ë²ì 모ë
ìì¤í ë¸ë£¨í¬ì¤ ì ë³´
í° íë¡ì ì ì¤ì
기기 ì°ê²° ì¤ì í기
- Article author: webmanual.hyundai.com
- Reviews from users: 31014 Ratings
- Top rated: 4.5
- Lowest rated: 1
- Summary of article content: Articles about 기기 ì°ê²° ì¤ì í기 블루투스 기기 목록을 선택하면 기기를 연결하거나 연결 해제합니다. 2 블루투스 오디오 연결 상태. 블루투스 오디오 연결 시 아이콘이 활성화됩니다. 3 블루투스 핸즈프리 … …
- Most searched keywords: Whether you are looking for 기기 ì°ê²° ì¤ì í기 블루투스 기기 목록을 선택하면 기기를 연결하거나 연결 해제합니다. 2 블루투스 오디오 연결 상태. 블루투스 오디오 연결 시 아이콘이 활성화됩니다. 3 블루투스 핸즈프리 …
- Table of Contents:
기기 ì°ê²° ì¤ì íë©´ì¼ë¡ ì´ëí기
기기 ì°ê²°
ë©ìì§ ìì ì림
ìë íì ë©ìì§
íë¼ì´ë²ì 모ë
ìì¤í ë¸ë£¨í¬ì¤ ì ë³´
í° íë¡ì ì ì¤ì
Google 어시스턴트에 스마트 홈 기기 연결하기 | Actions on Google Smart Home | Google Developers
- Article author: developers.google.com
- Reviews from users: 27588 Ratings
- Top rated: 3.5
- Lowest rated: 1
- Summary of article content: Articles about Google 어시스턴트에 스마트 홈 기기 연결하기 | Actions on Google Smart Home | Google Developers 1. 시작하기 전에. 사물 인터넷 (IoT) 개발자는 사용자가 Google Home 앱의 터치 컨트롤 및 어시스턴트의 음성 명령을 통해 기기를 제어 … …
- Most searched keywords: Whether you are looking for Google 어시스턴트에 스마트 홈 기기 연결하기 | Actions on Google Smart Home | Google Developers 1. 시작하기 전에. 사물 인터넷 (IoT) 개발자는 사용자가 Google Home 앱의 터치 컨트롤 및 어시스턴트의 음성 명령을 통해 기기를 제어 … 스마트 홈 작업을 개발하고 배포하여 어시스턴트에 가상 스마트 세탁기를 통합하세요.
- Table of Contents:
1 시작하기 전에
선행 조건
빌드할 항목
과정 내용
준비물
2 시작하기
활동 제어 사용 설정
작업 프로젝트 만들기
Firebase CLI 설치
3 시작 앱 실행
소스 코드 가져오기
프로젝트 정보
Firebase에 연결
Firebase 프로젝트 구성
Firebase에 배포하기
Actions 콘솔 프로젝트 구성
4 세탁기 만들기
SYNC 응답 업데이트하기
Firebase에 배포하기
Google 어시스턴트에 연결하기
5 명령어 및 쿼리 처리하기
QUERY 인텐트 처리하기
EXECUTE 인텐트 처리하기
6 작업 테스트하기
Firebase에 배포하기
세탁기 테스트하기
7 Google에 업데이트 보고하기
HomeGraph API 사용 설정하기
보고서 상태 사용 설정하기
동기화 요청 사용하기
Firebase에 배포하기
구현 테스트하기
8 축하합니다
자세히 알아보기
기기 ì°ê²°
- Article author: webmanual.kia.com
- Reviews from users: 18979 Ratings
- Top rated: 4.8
- Lowest rated: 1
- Summary of article content: Articles about 기기 ì°ê²° 기기 연결. 블루투스. 이 메뉴는 블루투스 전화 설정에 대한 설명입니다. 블루투스 연결. 이 메뉴는 헤드 유닛과 블루투스 휴대폰의 페어링과 연결을 위해 사용됩니다. …
- Most searched keywords: Whether you are looking for 기기 ì°ê²° 기기 연결. 블루투스. 이 메뉴는 블루투스 전화 설정에 대한 설명입니다. 블루투스 연결. 이 메뉴는 헤드 유닛과 블루투스 휴대폰의 페어링과 연결을 위해 사용됩니다.
- Table of Contents:
ë¸ë£¨í¬ì¤
í° íë¡ì ì
ë ëì ë¸ë£¨í¬ì¤ 기기 ì°ê²°í기
- Article author: gscs-manual.lge.com
- Reviews from users: 48468 Ratings
- Top rated: 3.8
- Lowest rated: 1
- Summary of article content: Articles about ë ëì ë¸ë£¨í¬ì¤ 기기 ì°ê²°í기 두 대의 블루투스 기기 연결하기. 멀티 폰 페어링(연결) 하기. a 본 기기와 블루투스 기기 한 대를 먼저 연결하세요. ([12페이지 “스마트폰과 스피커를 블루투스로 … …
- Most searched keywords: Whether you are looking for ë ëì ë¸ë£¨í¬ì¤ 기기 ì°ê²°í기 두 대의 블루투스 기기 연결하기. 멀티 폰 페어링(연결) 하기. a 본 기기와 블루투스 기기 한 대를 먼저 연결하세요. ([12페이지 “스마트폰과 스피커를 블루투스로 …
- Table of Contents:
See more articles in the same category here: 533+ tips for you.
Android 기기 연결 방법
1. 시작하기 전에 이 Codelab에서는 Android 스튜디오의 앱을 실제 Android 기기에 연결하는 방법을 알아봅니다. 케이블이나 Wi-Fi를 통해 기기를 연결할 수 있습니다. 이 Codelab에서는 두 사례를 모두 다룹니다. Android 스튜디오는 업데이트되고 때에 따라 UI도 변경되므로 Android 스튜디오가 화면에 표시된 것과 약간 다를 수 있습니다. 기본 요건 Android 스튜디오 사용 방법에 관한 기본 지식
Android 기기에서 설정을 열고 조정하는 능력 학습할 내용 Android 스튜디오에서 앱을 실행하도록 Android 기기를 설정하는 방법
실제 Android 기기의 Android 스튜디오에서 앱을 연결하고 실행하는 방법 필요한 항목 컴퓨터에 다운로드하여 설치한 Android 스튜디오
Android 스튜디오에서 설정한 앱 프로젝트
Android 기기(예: Lollipop 이상을 실행하는 스마트폰 또는 태블릿)
(선택사항) USB 포트를 통해 Android 기기를 컴퓨터에 연결하는 USB 케이블 참고: 컴퓨터와 Android 기기에 있는 USB 포트 종류와 이에 상응하는 필요한 케이블을 확인하는 데 도움이 필요하다면 USB를 참고하세요.
2. code-along 동영상 시청(선택사항) 교육 과정 강사가 Codelab을 완료하는 모습을 보려면 아래 동영상을 재생하세요. 동영상을 전체 화면으로 펼쳐(동영상 하단의 오른쪽 모서리에 있는 아이콘 사용) Android 스튜디오와 코드를 더 선명하게 보는 것이 좋습니다. 이 단계는 선택사항입니다. 이 동영상을 건너뛰고 Codelab 안내를 바로 시작할 수도 있습니다.
3. USB 디버깅 사용 설정 Android 스튜디오가 Android 기기와 통신하게 하려면 기기의 개발자 옵션 설정에서 USB 디버깅을 사용 설정해야 합니다. 개발자 옵션을 표시하고 USB 디버깅을 사용 설정하려면 다음 단계를 따르세요. Android 기기에서 설정 > 휴대전화 정보를 탭합니다. 빌드 번호를 일곱 번 탭합니다. 메시지가 표시되면 기기 비밀번호 또는 PIN을 입력합니다. ‘개발자가 되셨습니다.’라는 메시지가 표시되면 성공한 것입니다. ‘설정’으로 돌아간 다음 시스템 > 개발자 옵션을 탭합니다. 개발자 옵션이 표시되지 않으면 고급 옵션을 탭합니다. 개발자 옵션을 탭한 다음 USB 디버깅 전환을 탭하여 사용 설정합니다. Google USB 드라이버 설치(Windows에만 적용) Windows에 Android 스튜디오를 설치했다면 USB 기기 드라이버를 설치해야 실제 기기에서 앱을 실행할 수 있습니다. 참고: Ubuntu Linux의 경우 하드웨어 기기에서 앱 실행 안내를 따르세요. Android 스튜디오에서 Tools > SDK Manager를 클릭합니다. Preferences > Appearance & Behavior System Settings > Android SDK 대화상자가 열립니다. SDK Tools 탭을 클릭합니다. Google USB Driver를 선택하고 OK를 클릭합니다. 완료되면 드라이버 파일이 android_sdk\extras\google\usb_driver 디렉터리에 다운로드됩니다. 이제 Android 스튜디오에서 앱을 연결하고 실행할 수 있습니다.
4. 케이블을 통해 Android 기기에서 앱 실행 Android 스튜디오에 기기를 연결하는 두 가지 방법은 케이블이나 Wi-Fi를 통하는 것입니다. 원하는 방법을 선택하면 됩니다. Android 기기의 Android 스튜디오에서 앱을 실행하려면 다음 단계를 따르세요. USB 케이블을 사용하여 Android 기기를 컴퓨터에 연결합니다. USB 디버깅을 허용할지 묻는 대화상자가 기기에 표시됩니다. 이 컴퓨터에서 항상 허용 체크박스를 선택하고 확인을 탭합니다. 컴퓨터의 Android 스튜디오에서 드롭다운에 기기가 선택되어 있는지 확인합니다. 을 클릭합니다. 기기를 선택하고 OK를 클릭합니다. Android 스튜디오가 기기에 앱을 설치하고 실행합니다. 참고: Android 스튜디오 3.6 이상에서는 디버깅이 사용 설정된 상태로 기기가 연결되면 실제 기기가 자동으로 선택됩니다. 기기에서 Android 스튜디오에 설치되지 않은 Android 플랫폼을 실행하고 필요한 플랫폼을 설치할지 묻는 메시지가 표시되면 Install > Continue > Finish를 클릭합니다. Android 스튜디오가 기기에 앱을 설치하고 실행합니다.
5. Wi-Fi를 통해 Android 기기에서 앱 실행 케이블이 없다면 Wi-Fi를 통해 기기에서 앱을 연결하고 실행할 수 있습니다. 시작하기 컴퓨터와 기기가 동일한 무선 네트워크에 연결되어 있는지 확인합니다. 기기에서 Android 11 이상을 실행하는지 확인합니다. 자세한 내용은 Android 버전 확인 및 업데이트를 참고하세요. 컴퓨터에 최신 버전의 Android 스튜디오가 설치되어 있어야 합니다. 다운로드하려면 Android 스튜디오를 참고하세요. 컴퓨터에 최신 버전의 SDK 플랫폼 도구가 설치되어 있는지 확인합니다. 기기 페어링 Android 스튜디오의 실행 구성 드롭다운 메뉴에서 Pair Devices Using Wi-Fi를 선택합니다. Pair devices over Wi-Fi 대화상자가 열립니다. 개발자 옵션으로 이동하여 디버깅 섹션까지 아래로 스크롤하고 무선 디버깅을 사용 설정합니다. 이 네트워크에서 무선 디버깅을 허용하시겠습니까? 팝업에서 허용을 선택합니다. QR 코드로 기기를 페어링하려면 Pair device with QR code를 선택하고 컴퓨터에서 QR 코드를 스캔합니다. 또는 페어링 코드로 기기를 페어링하려면 Pair device with pairing code를 선택하고 6자리 코드를 입력합니다. Run을 클릭하면 기기에 앱을 배포할 수 있습니다. 참고: 다른 기기를 페어링하거나 컴퓨터에서 이 기기를 삭제하려면 기기에서 무선 디버깅으로 이동하여 페어링된 기기 아래에서 워크스테이션 이름을 탭하고 삭제를 선택합니다.
6. 문제 해결 컴퓨터에서 Linux나 Windows를 실행하는데 실제 Android 기기에서 앱을 실행할 수 없다면 하드웨어 기기에서 앱 실행의 추가 단계를 참고하시기 바랍니다.
컴퓨터에서 Windows를 실행하는데 에뮬레이터가 설치되지 않으면 기기에 맞는 USB 드라이버에 관한 OEM USB 드라이버 설치를 참고하시기 바랍니다.
Android 스튜디오에서 기기를 인식하지 못하는 경우 USB 케이블을 분리했다가 다시 연결하거나 Android 스튜디오를 다시 시작해 보세요.
컴퓨터가 여전히 기기를 찾지 못하거나 승인되지 않았다고 선언하면 USB 케이블의 연결을 끊습니다. 기기에서 설정 > 개발자 옵션 > USB 디버깅 승인 취소를 탭합니다. 기기를 컴퓨터에 다시 연결합니다. 메시지가 표시되면 승인을 부여합니다.
Google 어시스턴트에 스마트 홈 기기 연결하기
1. 시작하기 전에 사물 인터넷 (IoT) 개발자는 사용자가 Google Home 앱의 터치 컨트롤 및 어시스턴트의 음성 명령을 통해 기기를 제어할 수 있는 스마트 홈 작업를 빌드할 수 있습니다. 스마트 홈 작업은 집과 기기에 관한 문맥 데이터를 제공하여 집의 논리적 지도를 만드는 Home Graph를 바탕으로 합니다. 어시스턴트는 이러한 문맥 정보를 기반으로 집에 있는 각 사용자의 위치를 사용하여 사용자의 요청을 더 잘 이해할 수 있습니다. 예를 들어 Home Graph는 온도 조절기, 전등, 환풍기, 진공청소기 등 여러 제조업체에서 만든 다양한 유형의 기기가 포함된 거실의 개념을 저장할 수 있습니다. 선행 조건 스마트 홈 작업 만들기 개발자 가이드 빌드할 항목 이 Codelab에서는 가상의 스마트 세탁기를 관리하는 클라우드 서비스를 게시한 후 스마트 홈 작업을 빌드하고 어시스턴트에 연결합니다. 과정 내용 스마트 홈 클라우드 서비스를 배포하는 방법
어시스턴트에 서비스를 연결하는 방법
기기 상태 변경사항을 Google에 게시하는 방법 준비물 웹브라우저(예: Chrome)
Google Home 앱이 설치된 iOS 또는 Android 기기
Node.js 버전 10.16 이상
Google Cloud 결제 계정
2. 시작하기 활동 제어 사용 설정 Google 어시스턴트를 사용하려면 특정 활동 데이터를 Google과 공유해야 합니다. 이 데이터는 Google 어시스턴트가 제대로 작동하는 데 필요합니다. 하지만 데이터 공유 요구사항은 SDK에만 국한되지 않습니다. 이 데이터를 공유하려면 아직 없는 경우 Google 계정을 만드세요. 모든 Google 계정을 사용할 수 있습니다. 개발자 계정이 아니어도 됩니다. 어시스턴트와 함께 사용하려는 Google 계정의 활동 제어 페이지를 엽니다. 다음 전환 스위치가 사용 설정되어 있는지 확인합니다. 웹 및 앱 활동 : Chrome 방문 기록 및 Google 서비스를 사용하는 사이트, 앱, 기기에서 이루어진 활동 포함 체크박스도 선택해야 합니다.
: 체크박스도 선택해야 합니다. 기기 정보
음성 및 오디오 활동 이 프로젝트를 완전히 실행하려면 휴대전화와 Actions 콘솔에서 동일한 Google 계정을 사용해야 합니다. 작업 프로젝트 만들기 Actions on Google 개발자 콘솔로 이동합니다. 새 프로젝트를 클릭하고 프로젝트 이름을 입력한 후 프로젝트 만들기를 클릭합니다. 스마트 홈 앱 선택 Actions 콘솔의 개요 화면에서 스마트 홈을 선택합니다. 스마트 홈 환경 카드를 선택하고 빌드 시작을 클릭하면 프로젝트 콘솔로 이동하게 됩니다. 이 프로젝트에서는 결제 계정을 프로젝트와 연결해야 하는 Firebase용 Cloud Functions를 사용합니다. 작업 프로젝트는 기본적으로 결제 계정을 만들지 않습니다. 자세한 내용은 새 결제 계정 만들기를 참고하세요. Firebase CLI 설치 Firebase 명령줄 인터페이스(CLI)를 사용하면 로컬에서 웹 앱을 제공하고 웹 앱을 Firebase 호스팅에 배포할 수 있습니다. CLI를 설치하려면 일반적으로 Node.js와 함께 제공되는 npm을 설치해야 합니다. CLI를 설치하려면 터미널에서 다음 npm 명령어를 실행하세요. npm install -g firebase-tools 명령어가 작동하지 않나요? npm 권한을 변경해야 할 수도 있습니다. CLI가 제대로 설치되었는지 확인하려면 다음을 실행합니다. firebase –version 다음을 실행하여 Google 계정으로 Firebase CLI를 승인합니다. firebase login
3. 시작 앱 실행 이제 개발 환경을 설정했으므로 시작 프로젝트를 배포하여 모든 것이 올바르게 구성되었는지 확인할 수 있습니다. 소스 코드 가져오기 다음 링크를 클릭하여 개발 머신에 이 Codelab의 샘플을 다운로드합니다. file_download소스 코드 다운로드 …또는 명령줄에서 GitHub 저장소를 복제할 수도 있습니다. git clone https://github.com/googlecodelabs/smarthome-washer.git 참고: Codelab 저장소에는 다음과 같은 두 디렉터리가 포함됩니다. washer-start : 빌드의 토대가 될 시작 코드입니다.
: 빌드의 토대가 될 시작 코드입니다. washer-done : 완료된 샘플 세탁기 앱의 전체 코드입니다. 완료된 앱을 실행하려는 경우에도 Actions 콘솔에서 프로젝트를 만들어야 합니다. 프로젝트 정보 시작 프로젝트에는 다음과 같은 하위 디렉터리가 포함됩니다. public: 스마트 세탁기의 상태를 쉽게 제어하고 모니터링할 수 있는 프런트엔드 UI입니다.
스마트 세탁기의 상태를 쉽게 제어하고 모니터링할 수 있는 프런트엔드 UI입니다. functions: Firebase용 Cloud Functions 및 Firebase 실시간 데이터베이스로 스마트 세탁기를 관리할 수 있으며 완벽하게 구현된 클라우드 서비스입니다. 도움말: TODO 마커를 찾아보세요. 시작 프로젝트는 코드를 변경하거나 추가해야 할 위치를 나타내는 힌트를 제공합니다. 예: // TODO: Implement full SYNC response Firebase에 연결 washer-start 디렉터리로 이동한 후 작업 프로젝트를 사용해 Firebase CLI를 설정합니다. cd washer-start firebase use
도움말: 스마트 홈 작업의 프로젝트 ID를 모르는 경우 Actions 콘솔의 프로젝트 설정에서 확인할 수 있습니다. Firebase 프로젝트 구성 Firebase 프로젝트를 초기화합니다. firebase init 데이터베이스, Functions, 호스팅 CLI 기능을 선택합니다. ? Which Firebase CLI features do you want to set up for this folder? Press Space to select features, then Enter to confirm your choices. ❯◉ Database: Configure Firebase Realtime Database and deploy rules ◯ Firestore: Deploy rules and create indexes for Firestore ◉ Functions: Configure and deploy Cloud Functions ◉ Hosting: Configure and deploy Firebase Hosting sites ◯ Storage: Deploy Cloud Storage security rules ◯ Emulators: Set up local emulators for Firebase features ◯ Remote Config: Get, deploy, and rollback configurations for Remote Config 이렇게 하면 프로젝트에 필요한 API와 기능이 초기화됩니다. 메시지가 표시되면 실시간 데이터베이스를 초기화합니다. 데이터베이스 인스턴스의 기본 위치를 사용할 수 있습니다. ? It seems like you haven’t initialized Realtime Database in your project yet. Do you want to set it up? Yes ? Please choose the location for your default Realtime Database instance: us-central1 시작 프로젝트 코드를 사용하고 있으므로 보안 규칙의 기본 파일을 선택하고, 기존 데이터베이스 규칙 파일을 덮어쓰지 않도록 해야 합니다. ? What file should be used for Realtime Database Security Rules? Database.rules.json ? File database.rules.json already exists. Do you want to overwrite it with the Realtime Database Security Rules for -default-rtdb from the Firebase Console? No 마찬가지로 Functions를 구성할 때는 기본 파일을 사용해야 하고, 프로젝트 샘플의 기존 index.js 파일과 package.json 파일을 덮어쓰지 않도록 해야 합니다. ? What language would you like to use to write Cloud Functions? JavaScript ? File functions/package.json already exists. Overwrite? No ? File functions/index.js already exists. Overwrite? No ? Do you want to install dependencies with npm now? Yes 마지막으로 프로젝트 코드의 public 디렉터리를 사용하도록 호스팅 설정을 구성하고 기존 index.html 파일을 사용합니다. ? What do you want to use as your public directory? public ? Configure as a single-page app (rewrite all urls to /index.html)? Yes ? File public/index.html already exists. Overwrite? No 참고 프로젝트에 대한 결제를 아직 구성하지 않은 경우Blaze (사용한 만큼만 지불) 계획Firebase 함수 을 클릭하여 프로젝트 배포를 완료하세요. Firebase에 배포하기 functions 폴더로 이동한 다음 npm. 을 사용하여 필요한 모든 종속 항목을 설치합니다. cd functions npm install 이제 종속 항목을 설치하고 프로젝트를 구성했으므로 앱을 처음으로 실행할 수 있습니다. firebase deploy 콘솔에 다음과 같은 결과가 표시됩니다. … ✔ Deploy complete! Project Console: https://console.firebase.google.com/project/ /overview Hosting URL: https:// .web.app 이 명령어는 여러 Firebase용 Cloud Functions와 함께 웹 앱을 배포합니다. 참고: 프로젝트 구성이 완전히 적용되는 데 몇 분 정도 걸릴 수 있습니다. 배포를 시도할 때 HTTP 오류: 403이 표시되면 1분 정도 기다린 후 다시 시도하세요. 브라우저( https:// .web.app )에서 호스팅 URL을 열어 웹 앱을 확인합니다. 다음과 같은 인터페이스가 표시됩니다. 이 웹 UI는 기기 상태를 보거나 수정할 수 있는 타사 플랫폼을 나타냅니다. 데이터베이스에 기기 정보를 입력하기 시작하려면 업데이트를 클릭하세요. 페이지에는 변경사항이 표시되지 않지만 세탁기의 현재 상태는 데이터베이스에 저장됩니다. 참고: 가상 기기의 상태는 Firebase 실시간 데이터베이스를 사용하여 저장됩니다. Firebase Console을 사용하여 데이터베이스의 콘텐츠를 직접 볼 수 있습니다. 왼쪽 툴바에서 빌드 > 실시간 데이터베이스를 클릭합니다. 세탁기 상태에 업데이트가 있으면 여기에 반영됩니다. 이제 Actions 콘솔을 사용하여 Google 어시스턴트에 배포한 클라우드 서비스를 연결할 차례입니다. Actions 콘솔 프로젝트 구성 개요 > 작업 빌드에서 작업 추가를 선택합니다. 스마트 홈 인텐트를 처리하는 클라우드 함수의 URL을 입력하고 저장을 클릭합니다. https://us-central1- .cloudfunctions.net/smarthome 개발 > 호출 탭에서 작업의 표시 이름을 추가하고 저장을 클릭합니다. 이 이름이 Google Home 앱에 표시됩니다. 작업 연결을 사용하려면 왼쪽 탐색 메뉴에서 개발 > 계정 연결 옵션을 선택합니다. 다음 계정 연결 설정을 사용하세요. 클라이언트 ID ABC123 클라이언트 비밀번호 DEF456 인증 URL https://us-central1- .cloudfunctions.net/fakeauth 토큰 URL https://us-central1-
.cloudfunctions.net/faketoken 프로젝트 ID를 사용해 URL을 업데이트해야 합니다. 저장을 클릭하여 계정 연결 구성을 저장한 후 테스트를 클릭하여 프로젝트에서 테스트를 사용 설정합니다. 시뮬레이터로 리디렉션됩니다. ‘테스트 사용 설정됨’이 표시되지 않으면 테스트 재설정을 클릭하여 테스트가 사용 설정되었는지 확인합니다. 이제 기기 상태를 어시스턴트와 연결하는 데 필요한 웹훅을 구현할 수 있습니다.
4. 세탁기 만들기 이제 작업을 구성했으므로 기기를 추가하고 데이터를 전송할 수 있습니다. 클라우드 서비스에서는 다음 인텐트를 처리해야 합니다. SYNC 인텐트는 어시스턴트가 사용자가 연결한 기기를 알고자 할 때 발생합니다. 이 인텐트는 사용자가 계정을 연결하면 서비스로 전송됩니다. 사용자의 모든 기기 및 기기 기능이 포함된 JSON 페이로드로 응답해야 합니다.
인텐트는 어시스턴트가 사용자가 연결한 기기를 알고자 할 때 발생합니다. 이 인텐트는 사용자가 계정을 연결하면 서비스로 전송됩니다. 사용자의 모든 기기 및 기기 기능이 포함된 JSON 페이로드로 응답해야 합니다. QUERY 인텐트는 어시스턴트가 현재 상태나 기기의 상태를 알고자 할 때 발생합니다. 요청된 각 기기의 상태가 포함된 JSON 페이로드로 응답해야 합니다.
인텐트는 어시스턴트가 현재 상태나 기기의 상태를 알고자 할 때 발생합니다. 요청된 각 기기의 상태가 포함된 JSON 페이로드로 응답해야 합니다. EXECUTE 인텐트는 어시스턴트가 사용자를 대신하여 기기를 제어하려고 할 때 발생합니다. 요청된 각 기기의 실행 상태가 포함된 JSON 페이로드로 응답해야 합니다.
인텐트는 어시스턴트가 사용자를 대신하여 기기를 제어하려고 할 때 발생합니다. 요청된 각 기기의 실행 상태가 포함된 JSON 페이로드로 응답해야 합니다. DISCONNECT 인텐트는 사용자가 어시스턴트에서 계정을 연결 해제할 때 발생합니다. 이 사용자 기기의 이벤트를 어시스턴트로 전송하는 것을 중지해야 합니다. 다음 섹션에서 이러한 인텐트를 처리하기 위해 이전에 배포한 함수를 업데이트하게 됩니다. 어시스턴트 요청에 응답하기 위한 코드가 포함된 functions/index.js 를 엽니다. 기기 메타데이터 및 기능을 반환하여 SYNC 인텐트를 처리해야 합니다. 기기 정보와 세탁기용 권장 특성을 포함하도록 onSync 배열에 있는 JSON을 업데이트합니다. index.js app.onSync((body) => { return { requestId: body.requestId, payload: { agentUserId: USER_ID, devices: [{ id: ‘washer’, type: ‘action.devices.types.WASHER’, traits: [ ‘action.devices.traits.OnOff’, ‘action.devices.traits.StartStop’, ‘action.devices.traits.RunCycle’, ], name: { defaultNames: [‘My Washer’], name: ‘Washer’, nicknames: [‘Washer’], }, deviceInfo: { manufacturer: ‘Acme Co’, model: ‘acme-washer’, hwVersion: ‘1.0’, swVersion: ‘1.0.1’, }, willReportState: true, attributes: { pausable: true, }, }], }, }; }); Firebase에 배포하기 Firebase CLI를 사용하여 업데이트된 클라우드 처리를 배포합니다. firebase deploy –only functions Google 어시스턴트에 연결하기 스마트 홈 작업을 테스트하려면 프로젝트를 Google 계정에 연결해야 합니다. 이렇게 하면 동일한 계정에 로그인된 Google 어시스턴트 표시 경로와 Google Home 앱을 통해 테스트할 수 있습니다. 중요: 이 Codelab에는 사용자 인증 정보를 실제로 확인하지 않는 계정 링크 구현이 포함되어 있습니다. 프로덕션 시스템에서는 기기를 안전하게 보호하기 위해 OAuth 2.0 프로토콜을 구현해야 합니다. 휴대전화에서 Google 어시스턴트 설정을 엽니다. 콘솔에서와 동일한 계정으로 로그인해야 합니다. 어시스턴트에서 Google 어시스턴트 > 설정 > 홈 컨트롤로 이동합니다. 오른쪽 하단에서 더하기(+) 아이콘을 클릭합니다. 테스트 앱이 [test] 접두사 및 설정한 표시 이름으로 표시됩니다. 항목을 선택합니다. 그러면 Google 어시스턴트가 서비스를 인증하고 SYNC 요청을 보내 서비스에 사용자의 기기 목록을 제공하도록 요청합니다. Google Home 앱을 열고 세탁기 기기가 표시되는지 확인합니다. 참고: 이 연결 단계에서 문제가 발생하면 Cloud Logging을 사용하여 오류 로그를 확인할 수 있습니다.
5 명령어 및 쿼리 처리하기 이제 클라우드 서비스에서 세탁기 기기를 Google에 적절하게 보고하므로 기기 상태를 요청하고 명령어를 전송할 수 있어야 합니다. QUERY 인텐트 처리하기 QUERY 인텐트에는 일련의 기기가 포함됩니다. 기기마다 현재 상태로 응답해야 합니다. functions/index.js 에서 QUERY 핸들러를 수정하여 인텐트 요청에 포함된 대상 기기 목록을 처리합니다. index.js app.onQuery(async (body) => { const {requestId} = body; const payload = { devices: {}, }; const queryPromises = []; const intent = body.inputs[0]; for (const device of intent.payload.devices) { const deviceId = device.id; queryPromises.push(queryDevice(deviceId) .then((data) => { // Add response to device payload payload.devices[deviceId] = data; } )); } // Wait for all promises to resolve await Promise.all(queryPromises); return { requestId: requestId, payload: payload, }; }); 요청에 포함된 기기마다 실시간 데이터베이스에 저장된 현재 상태를 반환합니다. 세탁기의 상태 데이터를 반환하도록 queryFirebase 및 queryDevice 함수를 업데이트합니다. index.js const queryFirebase = async (deviceId) => { const snapshot = await firebaseRef.child(deviceId).once(‘value’); const snapshotVal = snapshot.val(); return { on: snapshotVal.OnOff.on, isPaused: snapshotVal.StartStop.isPaused, isRunning: snapshotVal.StartStop.isRunning, }; }; const queryDevice = async (deviceId) => { const data = await queryFirebase(deviceId); return { on: data.on, isPaused: data.isPaused, isRunning: data.isRunning, currentRunCycle: [{ currentCycle: ‘rinse’, nextCycle: ‘spin’, lang: ‘en’, }], currentTotalRemainingTime: 1212, currentCycleRemainingTime: 301, }; }; EXECUTE 인텐트 처리하기 EXECUTE 인텐트는 기기 상태를 업데이트하는 명령어를 처리합니다. 응답은 각 명령어의 상태(예: SUCCESS , ERROR 또는 PENDING )와 새 기기 상태를 반환합니다. 업데이트가 필요한 특성 목록 및 각 명령어의 대상 기기 세트를 처리하도록 functions/index.js 에서 EXECUTE 핸들러를 수정합니다. index.js app.onExecute(async (body) => { const {requestId} = body; // Execution results are grouped by status const result = { ids: [], status: ‘SUCCESS’, states: { online: true, }, }; const executePromises = []; const intent = body.inputs[0]; for (const command of intent.payload.commands) { for (const device of command.devices) { for (const execution of command.execution) { executePromises.push( updateDevice(execution, device.id) .then((data) => { result.ids.push(device.id); Object.assign(result.states, data); }) .catch(() => functions.logger.error(‘EXECUTE’, device.id))); } } } await Promise.all(executePromises); return { requestId: requestId, payload: { commands: [result], }, }; }); 명령어 및 대상 기기마다 실시간 데이터베이스에서 요청된 특성에 상응하는 값을 업데이트합니다. 적절한 Firebase 참조를 업데이트하고 업데이트된 기기 상태를 반환하도록 updateDevice 함수를 수정합니다. index.js const updateDevice = async (execution, deviceId) => { const {params, command} = execution; let state; let ref; switch (command) { case ‘action.devices.commands.OnOff’: state = {on: params.on}; ref = firebaseRef.child(deviceId).child(‘OnOff’); break; case ‘action.devices.commands.StartStop’: state = {isRunning: params.start}; ref = firebaseRef.child(deviceId).child(‘StartStop’); break; case ‘action.devices.commands.PauseUnpause’: state = {isPaused: params.pause}; ref = firebaseRef.child(deviceId).child(‘StartStop’); break; } return ref.update(state) .then(() => state); }; 참고: RunCycle 속성에 대한 EXECUTE 핸들러에는 코드가 없습니다. 이 특성은 명령어를 지원하지 않는 읽기 전용 특성이기 때문입니다.
6. 작업 테스트하기 세 가지 인텐트를 모두 구현한 후에는 작업이 세탁기를 제어하는지 테스트할 수 있습니다. Firebase에 배포하기 Firebase CLI를 사용하여 업데이트된 클라우드 처리를 배포합니다. firebase deploy –only functions 세탁기 테스트하기 이제 휴대전화를 통해 다음 음성 명령을 시도하면 값이 변경된 것을 확인할 수 있습니다. “Hey Google, 세탁기 켜 줘.” “Hey Google, 세탁기 일시중지해 줘.” “Hey Google, 세탁기 중지해 줘.” 또한 질문을 통해 세탁기의 현재 상태를 확인할 수 있습니다. “Hey Google, 세탁기 켜져 있어?” “Hey Google, 내 세탁기 돌아가고 있어?” “Hey Google, 세탁기가 지금 무슨 모드야?” Firebase Console의 탐색 메뉴에서 개발 > 함수 > 로그를 클릭하여 다음의 쿼리와 명령어를 확인할 수 있습니다.
7 Google에 업데이트 보고하기 사용자가 기기의 현재 상태를 제어하고 쿼리할 수 있도록 클라우드 서비스를 스마트 홈 인텐트와 완전히 통합했습니다. 하지만 이 구현에는 서비스가 기기 정보 또는 상태의 변경과 같은 이벤트 정보를 어시스턴트에 사전에 전송할 수 있는 방법이 없습니다. 사용자가 기기를 추가 또는 삭제하거나 기기 기능이 변경되면 동기화 요청을 사용해 새 동기화 요청을 트리거할 수 있습니다. 사용자가 실제로 기기 상태를 변경(예: 조명 스위치를 켬)하거나 다른 서비스를 사용해 상태를 변경했을 때 보고서 상태를 사용해 클라우드 서비스에서 사전에 기기 상태를 Home Graph에 전송할 수 있습니다. 이 섹션에서는 프런트엔드 웹 앱에서 이러한 메서드를 호출하기 위한 코드를 추가합니다. 참고: 스마트 홈 작업이 특정 사용자의 DISCONNECT 인텐트를 받으면 Google에 더 이상 업데이트를 전송하지 않는지 확인합니다. 이 인텐트는 사용자가 어시스턴트에서 계정을 연결 해제했음을 나타냅니다. HomeGraph API 사용 설정하기 HomeGraph API를 사용하면 사용자의 Home Graph 내에서 기기 및 상태를 저장하고 쿼리할 수 있습니다. 이 API를 사용하려면 먼저 Google Cloud Console을 열고 HomeGraph API를 사용 설정해야 합니다. Google Cloud Console에서 작업
. 와 일치하는 프로젝트를 선택합니다. 그런 다음 HomeGraph API의 API 라이브러리 화면에서 사용 설정을 클릭합니다. 보고서 상태 사용 설정하기 실시간 데이터베이스에 작성하면 시작 프로젝트에서 reportstate 함수가 트리거됩니다. 데이터베이스에 기록된 데이터를 캡처하고 보고서 상태를 통해 Home Graph에 게시하도록 functions/index.js 의 reportstate 함수를 업데이트합니다. index.js exports.reportstate = functions.database.ref(‘{deviceId}’).onWrite( async (change, context) => { functions.logger.info(‘Firebase write event triggered Report State’); const snapshot = change.after.val(); const requestBody = { requestId: ‘ff36a3cc’, /* Any unique ID */ agentUserId: USER_ID, payload: { devices: { states: { /* Report the current state of our washer */ [context.params.deviceId]: { on: snapshot.OnOff.on, isPaused: snapshot.StartStop.isPaused, isRunning: snapshot.StartStop.isRunning, }, }, }, }, }; const res = await homegraph.devices.reportStateAndNotification({ requestBody, }); functions.logger.info(‘Report state response:’, res.status, res.data); }); 동기화 요청 사용하기 프런트엔드 웹 UI에서 아이콘을 새로고침하면 시작 프로젝트에서 requestsync 함수가 트리거됩니다. HomeGraph API를 호출하도록 functions/index.js 에서 requestsync 함수를 구현합니다. index.js exports.requestsync = functions.https.onRequest(async (request, response) => { response.set(‘Access-Control-Allow-Origin’, ‘*’); functions.logger.info(`Request SYNC for user ${USER_ID}`); try { const res = await homegraph.devices.requestSync({ requestBody: { agentUserId: USER_ID, }, }); functions.logger.info(‘Request sync response:’, res.status, res.data); response.json(res.data); } catch (err) { functions.logger.error(err); response.status(500).send(`Error requesting sync: ${err}`); } }); Firebase에 배포하기 Firebase CLI를 사용하여 업데이트된 코드를 배포합니다. firebase deploy –only functions 구현 테스트하기 웹 UI에서 새로고침 버튼을 클릭하고 Firebase Console 로그에 동기화 요청이 표시되는지 확인합니다. 그런 다음 프런트엔드 웹 UI에서 세탁기 기기의 속성을 조정하고 업데이트를 클릭합니다. Firebase Console 로그에서 Google에 보고된 상태 변경사항을 볼 수 있는지 확인합니다.
So you have finished reading the 기기 연결 topic article, if you find this article useful, please share it. Thank you very much. See more: 기기설정, OK Google 기기 설정, 구글 기기연결, 기기연결관리, 주변 기기 설정, 기기설정 목록, 아이폰 Ok Google 기기 설정, 기기설정앱