1. Prima di iniziare
Che cosa creerai
In questo codelab, estenderai un'app di esempio esistente dell'API Android Home utilizzando la Knowledge Base dell'API Home e Gemini in Android Studio per automatizzare la creazione dell'interfaccia utente e l'integrazione dell'API. Aggiungerai un'interfaccia di debug che consente agli utenti di scaricare i log e riepilogare la loro Home per il debug e lo sviluppo.
La coppia vincente: Knowledge Base dell'API Home + Gemini in Android Studio
Questo flusso di lavoro si basa su due componenti fondamentali:
- Knowledge Base dell'API Home: un file di documentazione curato (
google-home-api-knowledge-base.txt) che fornisce a Gemini i vincoli tecnici, i modelli e i metodi specifici necessari per interagire con i dispositivi Google Home. - Consulta: https://developers.home.google.com/apis/android/knowledge-base
- Gemini in Android Studio: un collaboratore basato sull'AI che risiede direttamente all'interno dell'IDE. È sensibile al contesto del codice, delle risorse e del terminale.
Obiettivi didattici
- Come fornire la Knowledge Base dell'API Home come contesto a Gemini in Android Studio.
- Come utilizzare il vibe coding con Gemini in Android Studio per aggiungere nuove funzionalità all'app di esempio dell'API Home esistente.
2. Prerequisiti e configurazione
Prima di continuare, assicurati di aver completato le seguenti operazioni:
- Crea ed esegui l'app di esempio Android delle API Home: segui le istruzioni riportate all'indirizzo https://developers.home.google.com/apis/android/sample-app/build#build_the_app per creare ed eseguire l'app di esempio su cui si basa il nostro codelab.
- Configurazione dell'ambiente
- Scarica Android Studio: installa l'ultima versione stabile (Koala o versioni successive) dal sito ufficiale per gli sviluppatori.
- Attiva Gemini: apri la finestra degli strumenti Gemini (di solito nella striscia laterale destra). Accedi con il tuo Account Google e accetta i termini per attivare l'assistente AI. Per istruzioni, consulta https://developer.android.com/studio/gemini/get-started.
- File della Knowledge Base: assicurati di aver salvato il file
google-home-api-knowledge-base.txtnella directory del progetto. - Nota: se hai clonato l'app di esempio dall'app di esempio ufficiale di GitHub, questo file è già incluso nella cartella
tools/.
3. Crea il file AGENTS.md
Invece di ripetere le istruzioni in ogni chat, crea un "cervello" persistente per Gemini.
Nella radice del progetto, crea un nuovo file denominato AGENTS.md e incolla il seguente contesto:
**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.
In "Contesto", seleziona la casella accanto a AGENTS.md Files.

Verifichiamo se la configurazione è andata a buon fine. Chiedi a Gemini:
Can you see the Agents.md file? Do you know what file you need to check first before developing with Google Home API?
Dovresti vedere un risultato simile a quello riportato di seguito, che indica che sta leggendo il file AGENTS.md e utilizzerà il file della Knowledge Base.

4. Crea una nuova scheda Debug
Utilizza Gemini + Knowledge Base per modificare HomeAppView.kt e aggiungere una nuova destinazione di navigazione.
Prima di iniziare, ecco come dovrebbe apparire l'app di esempio delle API Home corrente:

Chiedi a Gemini di utilizzare un'icona a forma di ruota per rappresentare la nuova scheda di debug.
Can you help to add a wheel icon as the third tab in the HomeAppView .
Di seguito è riportato un potenziale dialogo di prompt e risposta con Gemini in Android Studio.

Ora possiamo vedere una nuova scheda "Debug" in basso:

5. Crea 2 nuovi pulsanti per "Dump struttura" e "Dump automazione"
Chiedi a Gemini:
Create two selectable buttons on the Debug page called "Dump Structure" and "Dump Automations".
Ora sono stati aggiunti due nuovi pulsanti nella pagina Debug.

6. Implementa la funzionalità "Scarica struttura"
Chiedi a Gemini:
Implement the first button "Dump Structure" to call dumpStructure(structure: Structure) in Debugger.kt with current selected structure.
Quando fai clic sul pulsante "Scarica struttura", i log della struttura vengono scaricati in LogCat.

7. Implementa la funzionalità "Scarica automazione"
Chiedi a Gemini:
Now Implement the "Dump Automation" functionality to call dumpAutomationsInStructure(structure: Structure) in Debugger.kt with current selected structure.
Quando fai clic sul pulsante "Scarica automazione", i log di automazione vengono scaricati in LogCat.

8. Implementa un pulsante "Riepiloga casa" che elenca le stanze e i dispositivi attuali
Chiedi 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 nuovo pulsante "Riassumi casa" nella pagina Debug.

Quando fai clic su questo pulsante, viene visualizzato un riepilogo attuale delle stanze e dei dispositivi.

9. Rivedi le modifiche
Gemini può anche aiutarti a rivedere le modifiche (o l'ultimo commit Git), trovare i potenziali problemi e risolverli.
Chiedi a Gemini:
Review the uncommitted changes and find potential issues.

10. Complimenti!
Complimenti! Hai esteso correttamente l'app di esempio dell'API Android Home utilizzando la Knowledge Base dell'API Home e Gemini per automatizzare la creazione dell'interfaccia utente e l'integrazione dell'API. Ora che sai come estendere l'app di esempio utilizzando lo sviluppo basato sull'AI, ecco alcune altre cose che puoi provare:
- Perfeziona il file AGENTS.md: prova ad aggiungere standard di programmazione specifici o linee guida del brand al file
AGENTS.mdper vedere come cambiano i suggerimenti di codice di Gemini. - Crea un'automazione personalizzata: utilizza Gemini e la Knowledge Base per scrivere uno script che attivi una routine "Buonanotte", ad esempio bloccare tutte le porte e abbassare le luci.
- Leggi la guida ufficiale della Knowledge Base dell'API Home e guarda Accelerare lo sviluppo con Gemini e la Knowledge Base