Gemini ใน Android Studio จะทำหน้าที่เป็นผู้ร่วมงานเขียนโค้ดของคุณ ซึ่งจะช่วยเร่งเวิร์กโฟลว์การพัฒนาด้วยการสร้างโค้ด สรุปหัวข้อที่ซับซ้อน ค้นหาแหล่งข้อมูลที่เฉพาะเจาะจง และอื่นๆ การสื่อสารที่มีประสิทธิภาพคือกุญแจสำคัญในการปลดล็อกศักยภาพทั้งหมดของ Gemini
คู่มือนี้จะอธิบายกลยุทธ์ในการตั้งค่าสภาพแวดล้อมในการพัฒนา และเขียนพรอมต์ที่ให้คำตอบที่เป็นประโยชน์และเชื่อถือได้ สำหรับกลยุทธ์หลายอย่าง เราได้ระบุพรอมต์ตัวอย่างสำหรับกรณีการใช้งานต่างๆ ดู ตัวอย่างพรอมต์เพิ่มเติมได้ที่แกลเลอรีพรอมต์
ใช้โหมด Agent
โหมด Agent ของ Gemini ใน Android Studio ทำได้มากกว่าที่คุณจะได้รับจากการแชทกับ Gemini เพียงอย่างเดียว คุณสามารถกำหนดเป้าหมายระดับสูงให้กับเอเจนต์ได้ และเอเจนต์จะแบ่งปัญหาออกเป็นส่วนๆ และสร้างแผนเพื่อแก้ปัญหา Agent จะเรียกใช้เครื่องมือ แก้ไขหลายไฟล์ และแก้ไขข้อผิดพลาดไปพร้อมๆ กัน โหมดตัวแทนช่วยให้ คุณจัดการงานที่ซับซ้อนได้อย่างมีประสิทธิภาพมากขึ้น ซึ่งจะช่วยเร่งกระบวนการพัฒนาทั้งหมด
ระบุให้เฉพาะเจาะจง
Gemini ใน Android Studio ทำงานได้ดีที่สุดเมื่อมีคำสั่งที่ชัดเจนและเฉพาะเจาะจง หากมีไลบรารี API หรือแนวทางที่คุณต้องการใช้ ให้ระบุไว้ในคำถาม หรือระบุไว้ในไฟล์ AGENTS.md ที่รูทของโปรเจ็กต์ เพื่อคงไว้ในการโต้ตอบ คิดว่าเป็นการยื่นรายงานข้อบกพร่อง: ยิ่งให้ข้อมูลมากเท่าใด ปัญหาจะได้รับการแก้ไขเร็วขึ้นและมีประสิทธิภาพมากขึ้นเท่านั้น
การใช้ฟังก์ชันใหม่
ควรทำ
ไม่ควรทำ
การสร้างโค้ด:
ควรทำ
เขียนฟังก์ชันระงับของ Kotlin ที่ใช้ไลบรารี Coil เพื่อดาวน์โหลดรูปภาพจากสตริง URL ที่ระบุ
ฟังก์ชันควรมีชื่อว่า
fetchImageAsBitmap
โดยควรรับ
Context
และ URL ของ String
เป็นอาร์กิวเมนต์ และแสดงผล
Bitmap
ที่เป็น Null ได้ หากมีข้อผิดพลาดเกี่ยวกับเครือข่ายหรือการถอดรหัส
ควรดักจับข้อยกเว้น บันทึก และแสดงผล
null
ไม่ควรทำ
การอธิบายแนวคิด:
ควรทำ
ฉันกำลังสร้างแอปเครื่องเล่นเพลงและต้องการเล่นเพลงต่อ เมื่อแอปทำงานในเบื้องหลัง
ฉันมีตัวเลือกใดบ้างในการ ทำให้แอปทำงานต่อไปขณะที่ผู้ใช้ทำสิ่งอื่นๆ บนอุปกรณ์ ข้อกำหนดระดับ API และผลกระทบต่ออายุแบตเตอรี่ของแต่ละวิธีมีอะไรบ้าง
ไม่ควรทำ
อธิบายโครงสร้างของคำตอบ
โดยค่าเริ่มต้น Gemini จะให้คำตอบในรูปแบบการสนทนาแบบย่อหน้า แม้ว่าวิธีนี้มักจะมีประโยชน์ในการอธิบาย แต่คุณจะได้รับผลลัพธ์ที่มีประสิทธิภาพมากขึ้น และนำไปใช้ได้ทันทีด้วยการบอกให้ AI จัดโครงสร้างคำตอบ การระบุรูปแบบเอาต์พุตจะสั่งให้โมเดลจัดระเบียบข้อมูลใน ลักษณะที่ชัดเจนและคาดการณ์ได้ ซึ่งจะช่วยประหยัดเวลาในการจัดรูปแบบด้วยตนเอง
หากต้องการแทรกโค้ดที่ Gemini สร้างขึ้นในแอปและต้องการโค้ดในรูปแบบใดรูปแบบหนึ่งเพื่อให้ใช้งานได้ทันที ให้ระบุวิธีการที่ชัดเจนแก่ Gemini เกี่ยวกับการสร้างและจัดรูปแบบโค้ด
การจัดโครงสร้างคำตอบ:
ควรทำ
สร้างเอนทิตี Room สำหรับโปรไฟล์ผู้ใช้ โดยควรมีฟิลด์ id
, userName
, email
และ memberSince
ฟิลด์ id
ควรสร้างขึ้นโดยอัตโนมัติ
ฟิลด์ memberSince
ควรแสดงการประทับเวลา
ไม่ควรทำ
หากคุณถามคำถามแบบปลายเปิดมากขึ้น ให้ถามคำถามสำหรับตัวเลือกจำนวน x
การจำกัดคำตอบ:
ควรทำ
ไม่ควรทำ
แบ่งคำขอที่ซับซ้อนออกเป็นงานที่เล็กลง
สำหรับคำขอที่ซับซ้อนและมีหลายขั้นตอน โปรดลองใช้โหมดเอเจนต์ อย่างไรก็ตาม หากแนวทางของเอเจนต์ไม่ใช่สิ่งที่คุณคาดหวัง คุณอาจต้องแนะนำ Gemini ผ่านพรอมต์ขนาดเล็กหลายๆ รายการที่ต่อเนื่องกันแทนที่จะขอทุกอย่างในครั้งเดียว วิธีนี้ช่วยให้คุณควบคุมได้มากขึ้นและช่วยให้คุณยืนยัน แต่ละขั้นตอนก่อนที่จะไปยังขั้นตอนถัดไป
การใช้พรอมต์ตามลำดับ
ควรทำ
พรอมต์ 1: โมเดลข้อมูล
ก่อนอื่น ให้สร้าง
คลาสข้อมูล Kotlin ชื่อ User
โดยควรมีพร็อพเพอร์ตี้ 3 รายการ ได้แก่ id
(Int), name
(String) และ email
(String)
พรอมต์ 2: เลเยอร์เครือข่าย
ตอนนี้ ให้สร้างอินเทอร์เฟซ Retrofit API ที่ชื่อ
ApiService
โดยต้องมีฟังก์ชันเดียวที่ชื่อ suspend fun
getUsers()
ซึ่งจะแสดงผล List<User>
พรอมต์ 3: การจัดการสถานะ
จากนั้นเขียน UsersViewModel
ที่
ใช้ ApiService
เป็นทรัพยากร Dependency UsersViewModel
ควรแสดง
StateFlow
ของคลาส UiState
ที่ปิดผนึกซึ่งสามารถ
แสดงสถานะ Loading, Success(users: List
และ
Error(message: String)
สร้างฟังก์ชันใน
ViewModel
เพื่อดึงข้อมูลผู้ใช้และอัปเดตสถานะ เขียนการทดสอบหน่วยสำหรับ
ฟังก์ชันการทำงานใหม่
พรอมต์ 4: เลเยอร์ UI
สุดท้าย ให้เขียนฟังก์ชัน Jetpack Compose ชื่อ
UserListScreen
ที่รับ UiState
เป็นพารามิเตอร์
ใช้คำสั่ง when
เพื่อแสดงCircularProgressIndicator
สำหรับสถานะการโหลด LazyColumn
ของชื่อผู้ใช้สำหรับสถานะสำเร็จ และองค์ประกอบ Text
ที่มีข้อความแสดงข้อผิดพลาดสำหรับสถานะข้อผิดพลาด เพิ่ม
การทดสอบที่ยืนยันฟังก์ชันการทำงานใหม่
ไม่ควรทำ
ViewModel
ที่ใช้ Retrofit และ Coroutines, ที่เก็บเพื่อจัดการตรรกะของข้อมูล
คลาสข้อมูล User
และต้องแสดงสถานะการโหลดและข้อผิดพลาดจัดการบริบท
ส่วนสำคัญของการทำงานกับ Gemini ใน Android Studio คือการระบุบริบทที่ถูกต้อง ระบุข้อมูลโค้ดที่เกี่ยวข้อง เนื้อหาไฟล์ และโครงสร้างโปรเจ็กต์ เพื่อให้ได้รับคำตอบที่เป็นประโยชน์มากที่สุด คุณอาจต้องทำซ้ำเพื่อ สร้างสมดุลที่เหมาะสม ข้อมูลมากเกินไปอาจทำให้ Gemini เข้าใจผิด ในขณะที่ ข้อมูลน้อยเกินไปก็อาจไม่มีบริบทเพียงพอให้ Gemini ช่วยได้ ใช้ฟีเจอร์ที่มี เพื่อให้ Gemini เข้าถึงบริบทที่จำเป็นได้
- แนบรูปภาพเพื่อแสดงภาพ UI ที่คุณวาดฝันไว้หรือสถาปัตยกรรมของแอปที่คุณพยายามทำความเข้าใจ
- แนบไฟล์เพื่อไฮไลต์ส่วนที่เกี่ยวข้องของ โค้ดเบส
- ใช้ไฟล์
.aiexclude
เพื่อให้ Gemini ละเว้นบางส่วนของโค้ดเบส - ใช้ไฟล์ AGENTS.md เพื่อให้คำสั่งเฉพาะของโปรเจ็กต์ และแชร์กับทีม เมื่อใช้ไฟล์ AGENTS.md ให้ใช้ ส่วนหัวและการจัดรูปแบบ Markdown เพื่อให้คำสั่งของคุณชัดเจน
- เมื่อใช้โหมด Agent ให้กำหนดค่าเซิร์ฟเวอร์ MCP เพื่อขยายความรู้และความสามารถของ Gemini ด้วยสภาพแวดล้อมภายนอก
ขอคำอธิบาย
หากไม่เข้าใจคำตอบของ Gemini ใน Android Studio ให้ขอ คำอธิบาย วิธีนี้เป็นวิธีที่ยอดเยี่ยมในการเรียนรู้และยืนยันว่าโซลูชันที่เสนอ เหมาะสมกับกรณีการใช้งานของคุณ หากคำตอบไม่เป็นไปตามที่คุณคาดหวัง อาจเป็นเพราะ Gemini ตอบไม่ถูกต้อง และการขอคำอธิบายจะช่วยให้ Gemini มีโอกาสแก้ไขตัวเอง
ทำซ้ำในคำสั่ง
การทำงานร่วมกับ Gemini ใน Android Studio บางครั้งอาจต้องมีการสื่อสารไปมาเพื่อความชัดเจนเกี่ยวกับงานและผลลัพธ์ที่คาดหวัง ซึ่งคล้ายกับการทำงานร่วมกับเพื่อนร่วมงาน หากคำตอบเริ่มต้นของ Gemini ไม่เพียงพอ ให้ตอบกลับ พร้อมความคิดเห็นและคำแนะนำเกี่ยวกับวิธีปรับปรุง หากคำตอบของโมเดลดีขึ้นตามคำแนะนำของคุณ ให้รวมคำแนะนำนั้นไว้ในพรอมต์ต้นฉบับโดยอัปเดตรายการในคลังพรอมต์หรืออัปเดตไฟล์ AGENTS.md