1. 시작하기 전에
빌드할 항목
이 Codelab에서는 Home API Knowledge Base 및 Android 스튜디오의 Gemini 를 사용하여 UI 생성 및 API 통합을 자동화하여 기존 Android Home API 샘플 앱을 확장합니다. 사용자가 디버깅 및 개발을 위해 로그를 덤프하고 홈을 요약할 수 있는 디버그 인터페이스를 추가합니다.
강력한 듀오: Home API Knowledge Base + Android 스튜디오의 Gemini
이 워크플로는 두 가지 중요한 구성요소에 의존합니다.
- Home API Knowledge Base: Google Home 기기와 상호작용하는 데 필요한 특정 기술 제약 조건, 모델, 메서드를 Gemini에 제공하는 선별된 문서 파일 (
google-home-api-knowledge-base.txt). - https://developers.home.google.com/apis/android/knowledge-base 참고
- Android 스튜디오의 Gemini: IDE 내에 직접 있는 AI 기반 공동작업자입니다. 코드, 리소스, 터미널을 인식합니다.
학습할 내용
- Android 스튜디오의 Gemini에 Home API Knowledge Base 를 컨텍스트로 제공하는 방법
- Android 스튜디오의 Gemini로 바이브 코딩하여 기존 Home API 샘플 앱에 새로운 기능을 추가하는 방법
2. 기본 요건 및 설정
계속하기 전에 다음이 완료되었는지 확인하세요.
- Home API Android 샘플 앱 빌드 및 실행: https://developers.home.google.com/apis/android/sample-app/build#build_the_app의 안내에 따라 Codelab의 기반이 되는 샘플 앱을 빌드하고 실행합니다.
- 환경 설정
- Android 스튜디오 다운로드: 공식 개발자 사이트에서 최신 안정화 버전 (코알라 이상)을 설치합니다.
- Gemini 사용 설정: Gemini 도구 창 (일반적으로 오른쪽 스트립)을 엽니다. Google 계정으로 로그인하고 약관에 동의하여 AI 어시스턴트를 활성화합니다. 안내는 https://developer.android.com/studio/gemini/get-started를 참고하세요.
- Knowledge Base 파일: 프로젝트 디렉터리에
google-home-api-knowledge-base.txt파일이 저장되어 있는지 확인합니다. - 참고: 공식 GitHub 샘플 앱에서 샘플 앱을 클론한 경우 이 파일은 이미 포함 되어 있습니다.
tools/폴더에 있습니다.
3. AGENTS.md 파일 만들기
모든 채팅에서 안내를 반복하는 대신 Gemini의 지속적인 '브레인'을 만듭니다.
프로젝트 루트에서 AGENTS.md 라는 새 파일을 만들고 다음 컨텍스트를 붙여넣습니다.
**Role:** You are an expert Android Home API Developer.
**Context:** This project uses the Google Home APIs.
**Source of Truth:** Always reference tools/google-home-api-knowledge-base.txt for Home API patterns, data models (Structures, Automations), and debugging methods.
**Guidelines:** Prioritize Material 3 Compose components and ensure all code is compatible with the latest Home API SDK.
'컨텍스트'에서 체크박스를 선택 합니다. AGENTS.md Files 옆의

설정이 완료되었는지 확인해 보겠습니다. Gemini에 다음을 프롬프트합니다.
Can you see the Agents.md file? Do you know what file you need to check first before developing with Google Home API?
아래와 비슷한 결과가 표시됩니다. AGENTS.md를 읽고 Knowledge Base 파일을 사용한다고 언급합니다.

4. 새 디버그 탭 만들기
Gemini + Knowledge Base를 사용하여 HomeAppView.kt를 수정하고 새 탐색 대상을 추가합니다.
시작하기 전에 현재 Home API 샘플 앱은 다음과 같이 표시됩니다.

Gemini에 새 디버그 탭을 나타내는 휠 아이콘을 사용하도록 프롬프트합니다.
Can you help to add a wheel icon as the third tab in the HomeAppView .
Android 스튜디오의 Gemini와의 잠재적인 프롬프트 및 응답 대화는 아래를 참고하세요.

이제 하단에 새 '디버그' 탭이 표시됩니다.

5. '구조 덤프' 및 '자동화 덤프'를 위한 새 버튼 2개 만들기
Gemini에 프롬프트합니다.
Create two selectable buttons on the Debug page called "Dump Structure" and "Dump Automations".
이제 디버그 페이지에 새 버튼 2개가 추가되었습니다.

6. '구조 덤프' 기능 구현
Gemini에 프롬프트합니다.
Implement the first button "Dump Structure" to call dumpStructure(structure: Structure) in Debugger.kt with current selected structure.
'구조 덤프' 버튼을 클릭하면 구조 로그가 LogCat에 덤프됩니다.

7. '자동화 덤프' 기능 구현
Gemini에 프롬프트합니다.
Now Implement the "Dump Automation" functionality to call dumpAutomationsInStructure(structure: Structure) in Debugger.kt with current selected structure.
'자동화 덤프' 버튼을 클릭하면 자동화 로그가 LogCat에 덤프됩니다.

8. 현재 방 및 기기를 나열하는 '홈 요약' 버튼 구현
Gemini에 프롬프트합니다.
In Debug tab, add a button "Summarize Home" to find the current room and devices with Home API and show them on a dialog.
디버그 페이지의 새 '홈 요약' 버튼

클릭하면 현재 방 및 기기 요약이 표시됩니다.

9. 변경사항 검토
Gemini는 변경사항 (또는 마지막 Git 커밋)을 검토하고, 잠재적인 문제를 찾아 해결하는 데도 도움이 될 수 있습니다.
Gemini에 프롬프트합니다.
Review the uncommitted changes and find potential issues.

10. 축하합니다.
축하합니다. Home API Knowledge Base 및 Gemini를 활용하여 UI 생성 및 API 통합을 자동화하여 Android Home API 샘플 앱을 확장했습니다. 이제 AI 기반 개발을 사용하여 샘플 앱을 확장하는 방법을 알아보았으니 다음과 같은 다른 작업을 시도해 보세요.
- AGENTS.md 개선: 특정 코딩 표준 또는 브랜드 가이드라인을
AGENTS.md파일에 추가하여 Gemini의 코드 제안이 어떻게 변경되는지 실험해 보세요. - 맞춤 자동화 빌드: Gemini 및 Knowledge Base를 사용하여 모든 문을 잠그고 조명을 어둡게 하는 등 "잘 자" 루틴을 트리거하는 스크립트를 작성합니다.
- 공식 Home API 기술 자료 가이드 읽기 및 Gemini 및 기술 자료로 개발 가속화 시청