1. Zanim zaczniesz
Co utworzysz
W tym ćwiczeniu rozszerzysz istniejącą przykładową aplikację Android Home API, korzystając z bazy wiedzy Home API i Gemini w Android Studio, aby zautomatyzować tworzenie interfejsu i integrację interfejsu API. Dodasz interfejs debugowania, który umożliwi użytkownikom zrzucanie logów i podsumowywanie ich domu na potrzeby debugowania i programowania.
Potężny duet: baza wiedzy Home API i Gemini w Android Studio
Ten proces zależy od 2 kluczowych elementów:
- Baza wiedzy Home API: wyselekcjonowany plik dokumentacji (
google-home-api-knowledge-base.txt), który zawiera konkretne ograniczenia techniczne, modele i metody wymagane do interakcji z urządzeniami Google Home. - Więcej informacji znajdziesz na stronie https://developers.home.google.com/apis/android/knowledge-base
- Gemini w Android Studio: oparty na AI asystent, który jest dostępny bezpośrednio w środowisku IDE. Uwzględnia kontekst kodu, zasobów i terminala.
Czego się nauczysz
- Jak przekazać bazę wiedzy Home API jako kontekst do Gemini w Android Studio.
- Jak za pomocą Gemini w Android Studio dodać nowe funkcje do istniejącej przykładowej aplikacji Home API.
2. Wymagania wstępne i konfiguracja
Zanim przejdziesz dalej, upewnij się, że wykonane zostały te czynności:
- Skompiluj i uruchom przykładową aplikację na Androida korzystającą z interfejsów Home API: postępuj zgodnie z instrukcjami na stronie https://developers.home.google.com/apis/android/sample-app/build#build_the_app, aby skompilować i uruchomić przykładową aplikację, na której opiera się nasz kurs.
- Konfiguracja środowiska
- Pobierz Androida Studio: zainstaluj najnowszą stabilną wersję (Koala lub nowszą) z oficjalnej strony dla deweloperów.
- Włącz Gemini: otwórz okno narzędzia Gemini (zwykle na pasku po prawej stronie). Zaloguj się na konto Google i zaakceptuj warunki, aby aktywować asystenta AI. Instrukcje znajdziesz na stronie https://developer.android.com/studio/gemini/get-started.
- Plik bazy wiedzy: upewnij się, że plik
google-home-api-knowledge-base.txtjest zapisany w katalogu projektu. - Uwaga: jeśli sklonujesz przykładową aplikację z oficjalnego repozytorium GitHub, ten plik będzie już uwzględniony w folderze
tools/.
3. Tworzenie pliku AGENTS.md
Zamiast powtarzać instrukcje na każdym czacie, możesz utworzyć trwały „mózg” dla Gemini.
W katalogu głównym projektu utwórz nowy plik o nazwie AGENTS.md i wklej do niego ten kontekst:
**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.
W sekcji „Kontekst” zaznacz pole obok opcji AGENTS.md Files.

Sprawdźmy, czy konfiguracja przebiegła pomyślnie. Zapytaj Gemini:
Can you see the Agents.md file? Do you know what file you need to check first before developing with Google Home API?
Powinien pojawić się wynik podobny do tego poniżej, informujący, że odczytuje plik AGENTS.md i będzie używać pliku bazy wiedzy.

4. Tworzenie nowej karty Debugowanie
Użyj Gemini + Knowledge Base, aby zmodyfikować plik HomeAppView.kt i dodać nowe miejsce docelowe nawigacji.
Zanim zaczniesz, sprawdź, jak powinna wyglądać obecna przykładowa aplikacja Home API:

Poproś Gemini o użycie ikony koła, aby reprezentować nową kartę debugowania.
Can you help to add a wheel icon as the third tab in the HomeAppView .
Poniżej znajdziesz przykładowy dialog z Gemini w Android Studio

U dołu pojawi się nowa karta „Debugowanie”:

5. Utwórz 2 nowe przyciski: „Dump Structure” i „Dump Automation”.
Zapytaj Gemini:
Create two selectable buttons on the Debug page called "Dump Structure" and "Dump Automations".
Na stronie Debugowanie dodaliśmy 2 nowe przyciski.

6. Wdrażanie funkcji „Dump Structure”
Zapytaj Gemini:
Implement the first button "Dump Structure" to call dumpStructure(structure: Structure) in Debugger.kt with current selected structure.
Gdy klikniesz przycisk „Dump Structure” (Zrzut struktury), dzienniki struktury zostaną zrzucone do LogCat.

7. Wdrożenie funkcji „Dump Automation”
Zapytaj Gemini:
Now Implement the "Dump Automation" functionality to call dumpAutomationsInStructure(structure: Structure) in Debugger.kt with current selected structure.
Gdy klikniesz przycisk „Dump Automation” (Zrzut automatyzacji), logi automatyzacji zostaną zrzucone do LogCat.

8. Wdrożenie przycisku „Podsumuj dom”, który zawiera listę bieżących pomieszczeń i urządzeń.
Zapytaj 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.
Nowy przycisk „Podsumuj stronę główną” na stronie Debugowanie

Gdy klikniesz tę opcję, wyświetli się bieżące podsumowanie pomieszczeń i urządzeń.

9. Sprawdź zmiany
Gemini może też pomóc w sprawdzeniu zmian (lub ostatniego zatwierdzenia w systemie Git), znalezieniu potencjalnych problemów i ich rozwiązaniu.
Zapytaj Gemini:
Review the uncommitted changes and find potential issues.

10. Gratulacje!
Gratulacje! Udało Ci się rozszerzyć przykładową aplikację Android Home API, korzystając z bazy wiedzy Home API i Gemini do automatyzacji tworzenia interfejsu i integracji interfejsu API. Teraz, gdy wiesz już, jak rozszerzyć przykładową aplikację za pomocą rozwoju opartego na AI, możesz wypróbować te dodatkowe opcje:
- Ulepsz plik AGENTS.md: eksperymentuj z dodawaniem do pliku
AGENTS.mdkonkretnych standardów kodowania lub wytycznych dotyczących marki, aby sprawdzić, jak wpłynie to na sugestie dotyczące kodu w Gemini. - Tworzenie automatyzacji niestandardowej: użyj Gemini i bazy wiedzy, aby napisać skrypt, który uruchamia procedurę „Dobranoc”, np. zamyka wszystkie drzwi i przyciemnia światła.
- Przeczytaj oficjalny przewodnik po bazie wiedzy interfejsu Home API i obejrzyj film Accelerate Development with Gemini & the Knowledge Base (Przyspieszanie rozwoju dzięki Gemini i bazie wiedzy).