พัฒนาแอป Android Home API ผ่านฐานความรู้ Home API และ Gemini

1. ก่อนเริ่มต้น

สิ่งที่คุณจะสร้าง

ใน Codelab นี้ คุณจะได้ขยายแอปตัวอย่าง Android Home API ที่มีอยู่โดยใช้ฐานความรู้ Home API และ Gemini ใน Android Studio เพื่อสร้าง UI และผสานรวม API โดยอัตโนมัติ คุณจะเพิ่มอินเทอร์เฟซการแก้ไขข้อบกพร่องที่อนุญาตให้ผู้ใช้ทิ้งบันทึกและสรุปบ้านของตนเพื่อการแก้ไขข้อบกพร่องและการพัฒนา

คู่หูสุดเจ๋ง: ฐานความรู้เกี่ยวกับ Home API + Gemini ใน Android Studio

เวิร์กโฟลว์นี้อาศัยองค์ประกอบสำคัญ 2 อย่าง ได้แก่

  • ฐานความรู้เกี่ยวกับ Home API: ไฟล์เอกสารที่ดูแลจัดการ (google-home-api-knowledge-base.txt) ซึ่งให้ข้อจำกัดทางเทคนิค โมเดล และเมธอดที่เฉพาะเจาะจงแก่ Gemini ซึ่งจำเป็นต่อการโต้ตอบกับอุปกรณ์ Google Home
  • ดูที่ https://developers.home.google.com/apis/android/knowledge-base
  • Gemini ใน Android Studio: ผู้ช่วยที่ทำงานร่วมกันด้วยระบบ AI ซึ่งอยู่ใน IDE ของคุณโดยตรง โดยจะรับรู้บริบทของโค้ด ทรัพยากร และเทอร์มินัล

สิ่งที่คุณจะได้เรียนรู้

  • วิธีระบุฐานความรู้เกี่ยวกับ Home API เป็นบริบทให้กับ Gemini ใน Android Studio
  • วิธี Vibe Code ด้วย Gemini ใน Android Studio เพื่อเพิ่มฟังก์ชันใหม่ๆ ลงในแอปตัวอย่าง Home API ที่มีอยู่

2. ข้อกำหนดเบื้องต้นและการตั้งค่า

โปรดตรวจสอบว่าคุณได้ทำสิ่งต่อไปนี้แล้วก่อนดำเนินการต่อ

  • สร้างและเรียกใช้แอปตัวอย่าง Android ของ Home APIs: ทำตามวิธีการที่ https://developers.home.google.com/apis/android/sample-app/build#build_the_app เพื่อสร้างและเรียกใช้แอปตัวอย่างที่ codelab ของเราใช้เป็นพื้นฐาน
  • การตั้งค่าสภาพแวดล้อม
  • ดาวน์โหลด Android Studio: ติดตั้งเวอร์ชันเสถียรล่าสุด (Koala หรือใหม่กว่า) จากเว็บไซต์อย่างเป็นทางการของนักพัฒนาแอป
  • เปิดใช้ Gemini: เปิดหน้าต่างเครื่องมือ Gemini (โดยปกติจะอยู่ที่แถบด้านขวา) ลงชื่อเข้าใช้ด้วยบัญชี Google และยอมรับข้อกำหนดเพื่อเปิดใช้งานผู้ช่วย AI ดูวิธีการได้ที่ https://developer.android.com/studio/gemini/get-started
  • ไฟล์ฐานความรู้: ตรวจสอบว่าคุณได้บันทึกไฟล์ 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

2047b69244c9da6e.png

มาตรวจสอบกันว่าการตั้งค่าสำเร็จหรือไม่ ป้อนพรอมต์ให้ 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 และจะใช้ไฟล์ฐานความรู้

830ef529169d47b.png

4. สร้างแท็บแก้ไขข้อบกพร่องใหม่

ใช้ Gemini + ฐานความรู้เพื่อแก้ไข HomeAppView.kt และเพิ่มปลายทางการนำทางใหม่

ก่อนที่จะเริ่มต้น แอปตัวอย่าง Home API ปัจจุบันของคุณควรมีลักษณะดังนี้

981f74eb250a2552.png

แจ้ง Gemini ให้ใช้ไอคอนวงล้อเพื่อแสดงแท็บการแก้ไขข้อบกพร่องใหม่

Can you help to add a wheel icon as the third tab in the HomeAppView .

ดูตัวอย่างการสนทนาด้วยพรอมต์และคำตอบที่อาจเกิดขึ้นกับ Gemini ใน Android Studio ได้ที่ด้านล่าง

c9cf695cb6549fa3.png

ตอนนี้คุณจะเห็นแท็บ "แก้ไขข้อบกพร่อง" ใหม่ที่ด้านล่าง

ac1e16cc6bcae224.png

5. สร้างปุ่มใหม่ 2 ปุ่มสำหรับ "Dump Structure" และ "Dump Automation"

ป้อนพรอมต์ให้ Gemini:

Create two selectable buttons on the Debug page called "Dump Structure" and "Dump Automations".

ตอนนี้เราได้เพิ่มปุ่มใหม่ 2 ปุ่มในหน้าแก้ไขข้อบกพร่องแล้ว

451ad164998d527c.png

6. ใช้ฟังก์ชัน "Dump Structure"

ป้อนพรอมต์ให้ Gemini:

Implement the first button "Dump Structure" to call dumpStructure(structure: Structure) in Debugger.kt with current selected structure.

เมื่อคลิกปุ่ม "Dump Structure" ระบบจะทิ้งบันทึกของ Structure ไปยัง LogCat

af7295a2ad999798.png

7. ใช้ฟังก์ชัน "การทำงานอัตโนมัติของ Dump"

ป้อนพรอมต์ให้ Gemini:

Now Implement the "Dump Automation" functionality to call dumpAutomationsInStructure(structure: Structure) in Debugger.kt with current selected structure.

เมื่อคลิกปุ่ม "Dump Automation" ระบบจะทิ้งบันทึกการทำงานอัตโนมัติไปยัง LogCat

d5ea7f17e29d9220.png

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.

ปุ่ม "สรุปหน้าแรก" ใหม่ในหน้าแก้ไขข้อบกพร่อง

a4cf16a09f535f8b.png

และเมื่อคลิกแล้ว ระบบจะแสดงข้อมูลสรุปปัจจุบันของห้องและอุปกรณ์

cd2dcccc60947445.png

9. ตรวจสอบการเปลี่ยนแปลง

นอกจากนี้ Gemini ยังช่วยตรวจสอบการเปลี่ยนแปลง (หรือการคอมมิต Git ครั้งล่าสุด) ค้นหาปัญหาที่อาจเกิดขึ้น และแก้ไขปัญหาดังกล่าวได้ด้วย

ป้อนพรอมต์ให้ Gemini:

Review the uncommitted changes and find potential issues.

816ea8380bffc14f.png

10. ยินดีด้วย

ยินดีด้วย คุณขยายแอปตัวอย่าง Android Home API ได้สำเร็จโดยใช้ฐานความรู้ Home API และ Gemini เพื่อทำให้การสร้าง UI และการผสานรวม API เป็นไปโดยอัตโนมัติ ตอนนี้คุณทราบวิธีขยายแอปตัวอย่างโดยใช้การพัฒนาที่ขับเคลื่อนด้วย AI แล้ว ต่อไปนี้คือสิ่งอื่นๆ ที่คุณลองทำได้