1. Antes de comenzar
Qué compilarás
En este codelab, extenderás una app de ejemplo existente de la API de Android Home usando la base de conocimiento de la API de Home y Gemini en Android Studio para automatizar la creación de la IU y la integración de la API. Agregarás una interfaz de depuración que permitirá a los usuarios volcar registros y resumir su casa para la depuración y el desarrollo.
El dúo dinámico: Base de conocimiento de la API de Home y Gemini en Android Studio
Este flujo de trabajo se basa en dos componentes fundamentales:
- Base de conocimiento de la API de Home: Es un archivo de documentación seleccionado (
google-home-api-knowledge-base.txt) que proporciona a Gemini las restricciones técnicas, los modelos y los métodos específicos necesarios para interactuar con los dispositivos de Google Home. - Consulta: https://developers.home.google.com/apis/android/knowledge-base
- Gemini en Android Studio: Un colaborador potenciado por IA que se encuentra directamente en tu IDE. Tiene en cuenta el contexto de tu código, tus recursos y tu terminal.
Qué aprenderás
- Cómo proporcionar la base de conocimiento de la API de Home como contexto a Gemini en Android Studio
- Cómo usar vibe coding con Gemini en Android Studio para agregar nuevas funciones a la app de ejemplo existente de la API de Home
2. Requisitos previos y configuración
Antes de continuar, asegúrate de haber completado los siguientes pasos:
- Compila y ejecuta la app de ejemplo para Android de las APIs de Home: Sigue las instrucciones en https://developers.home.google.com/apis/android/sample-app/build#build_the_app para compilar y ejecutar la app de ejemplo en la que se basa nuestro codelab.
- Configuración del entorno
- Descarga Android Studio: Instala la versión estable más reciente (Koala o posterior) desde el sitio oficial para desarrolladores.
- Habilita Gemini: Abre la ventana de herramientas de Gemini (por lo general, en la tira del lado derecho). Accede con tu Cuenta de Google y acepta las condiciones para activar el asistente de IA. Consulta https://developer.android.com/studio/gemini/get-started para obtener instrucciones.
- Archivo de la base de conocimiento: Asegúrate de tener el archivo
google-home-api-knowledge-base.txtguardado en el directorio de tu proyecto. - Nota: Si clonaste la app de ejemplo desde la app de ejemplo oficial de GitHub, este archivo ya está incluido en la carpeta
tools/.
3. Crea el archivo AGENTS.md
En lugar de repetir instrucciones en cada chat, crea un "cerebro" persistente para Gemini.
En la raíz del proyecto, crea un archivo nuevo llamado AGENTS.md y pega el siguiente contexto:
**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.
En "Contexto", marca la casilla junto a AGENTS.md Files.

Verifiquemos si la configuración se realizó correctamente. Escribe la siguiente instrucción en Gemini:
Can you see the Agents.md file? Do you know what file you need to check first before developing with Google Home API?
Deberías ver un resultado similar al siguiente, en el que se menciona que se está leyendo el archivo AGENTS.md y que se usará el archivo de la base de conocimiento.

4. Crea una pestaña Debug nueva
Usa Gemini + Knowledge Base para modificar HomeAppView.kt y agregar un nuevo destino de navegación.
Antes de comenzar, así debería verse tu app de ejemplo actual de las APIs de Home:

Pídele a Gemini que use un ícono de rueda para representar la nueva pestaña de depuración.
Can you help to add a wheel icon as the third tab in the HomeAppView .
A continuación, se muestra un posible diálogo de instrucciones y respuestas con Gemini en Android Studio

Ahora podemos ver una nueva pestaña "Debug" en la parte inferior:

5. Crea 2 botones nuevos para "Dump Structure" y "Dump Automation".
Instruye a Gemini:
Create two selectable buttons on the Debug page called "Dump Structure" and "Dump Automations".
Ahora agregamos 2 botones nuevos en la página Debug

6. Implementa la función "Dump Structure"
Instruye a Gemini:
Implement the first button "Dump Structure" to call dumpStructure(structure: Structure) in Debugger.kt with current selected structure.
Cuando haces clic en el botón "Dump Structure", los registros de estructura se vuelcan en LogCat.

7. Implementa la función "Dump Automation"
Instruye a Gemini:
Now Implement the "Dump Automation" functionality to call dumpAutomationsInStructure(structure: Structure) in Debugger.kt with current selected structure.
Cuando haces clic en el botón "Dump Automation", los registros de automatización se vuelcan en LogCat.

8. Implementa un botón "Resumir la casa" que muestre las habitaciones y los dispositivos actuales.
Instruye a 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.
Un nuevo botón “Resumir la página principal” en la página de depuración

Cuando hagas clic en él, se mostrará un resumen actual de las habitaciones y los dispositivos.

9. Revisa los cambios
Gemini también puede ayudarte a revisar los cambios (o la última confirmación de Git), encontrar los posibles problemas y corregirlos.
Instruye a Gemini:
Review the uncommitted changes and find potential issues.

10. ¡Felicitaciones!
¡Felicitaciones! Extendiste correctamente tu app de ejemplo de la API de Home de Android utilizando la base de conocimiento de la API de Home y Gemini para automatizar la creación de la IU y la integración de la API. Ahora que sabes cómo extender la app de ejemplo con el desarrollo basado en IA, puedes probar otras opciones:
- Refina tu archivo AGENTS.md: Experimenta con la adición de estándares de programación o lineamientos de desarrollo de la marca específicos a tu archivo
AGENTS.mdpara ver cómo cambian las sugerencias de código de Gemini. - Crea una automatización personalizada: Usa Gemini y la base de conocimiento para escribir una secuencia de comandos que active una rutina de "Buenas noches", como trabar todas las puertas y atenuar las luces.
- Lee la Guía oficial de la base de conocimiento de la API de Home y mira el video Acelera el desarrollo con Gemini y la base de conocimiento.