Android Studio 中的 Gemini 是您的程式設計協作者,可生成程式碼、歸納複雜主題、尋找特定資源等,加快開發工作流程。有效溝通是充分發揮 Gemini 潛能的關鍵。
本指南列出設定開發環境的策略,以及編寫提示的策略,協助您取得實用且可靠的回覆。針對多種策略,我們提供不同用途的範例提示。如需更多提示範例,請參閱提示庫。
使用代理模式
Android Studio 的 代理模式中的 Gemini 不僅能與你對話,還能提供更多功能。您可以為代理程式設定高階目標,代理程式會分解問題並制定解決方案。代理程式會呼叫工具、編輯多個檔案,並修正錯誤。代理程式模式可協助您更有效率地處理複雜工作,加快整個開發流程。
清楚明確
Gemini 版 Android Studio 最適合搭配清楚明確的指令使用。如有想使用的特定程式庫、API 或方法,請在問題中或專案的根 AGENTS.md 檔案中加入這些項目,以便在互動期間保留這些項目。這就像是提交錯誤報告:您提供的資訊越多,問題就能越快獲得解決。
導入新功能:
正確做法
錯誤做法
生成程式碼:
正確做法
編寫 Kotlin 暫停函式,使用 Coil 程式庫從指定網址字串下載圖片。
函式應命名為 fetchImageAsBitmap
。這個函式應以 Context
和 String
網址做為引數,並傳回可為空值的 Bitmap
。如有任何網路或解碼錯誤,應會擷取例外狀況、記錄錯誤,並傳回 null
。
錯誤做法
說明概念:
正確做法
我正在建構音樂播放器應用程式,需要在應用程式處於背景時繼續播放。
使用者在裝置上執行其他作業時,我有哪些方法可以讓應用程式保持運作?每種做法的 API 級別需求和電池續航力影響為何?
錯誤做法
說明答案的結構
根據預設,Gemini 會以對話形式提供答案,並以段落呈現。雖然這項功能通常有助於說明,但只要告訴 AI 回覆的結構,就能獲得更有效率且可立即使用的結果。指定輸出格式可引導模型以清楚且可預測的方式整理資訊,節省您自行重新格式化的時間。
如要將 Gemini 生成的程式碼插入應用程式,並需要特定格式的程式碼以便立即使用,請清楚指示 Gemini 生成程式碼並設定格式。
回覆結構:
正確做法
為使用者設定檔建立 Room 實體。其中應包含 id
、userName
、email
和 memberSince
欄位。id
欄位應由系統自動產生。memberSince
欄位應代表時間戳記。
錯誤做法
如果問題較為開放,請要求 x 個選項。
限制回覆:
正確做法
錯誤做法
將複雜要求拆分成較小的任務
如果是複雜的多步驟要求,請務必試試代理程式模式。不過,如果代理程式的處理方式不符合預期,建議您透過一系列較小的連續提示引導 Gemini,而不是一次要求所有內容。這個方法可讓您進一步掌控,並在繼續下一個步驟前驗證每個步驟。
套用連續提示:
正確做法
提示 1:資料模型
首先,建立名為 User
的 Kotlin 資料類別。其中應有三個屬性:id
(Int)、name
(String) 和 email
(String)。
提示 2:網路層
現在,請建立名為 ApiService
的 Retrofit API 介面。這需要名為 getUsers()
的單一 suspend fun
,該 suspend fun
會傳回 List<User>
。
提示 3:狀態管理
接下來,請編寫以 ApiService
為依附元件的 UsersViewModel
。UsersViewModel
應公開封閉 UiState
類別的 StateFlow
,該類別可代表 Loading, Success(users: List
和 Error(message: String)
狀態。在 ViewModel
中建立函式,以擷取使用者並更新狀態。為新功能編寫單元測試
提示 4:UI 層
最後,請編寫名為 UserListScreen
的 Jetpack Compose 函式,並將 UiState
做為參數。使用 when
陳述式顯示載入狀態的 CircularProgressIndicator
、成功狀態的使用者名稱 LazyColumn
,以及錯誤狀態的 Text
元素和錯誤訊息。新增測試,確認新功能是否正常運作。
錯誤做法
ViewModel
、處理資料邏輯的存放區、User
資料類別,並顯示載入和錯誤狀態。管理背景資訊
使用 Gemini 版 Android Studio 時,提供正確的脈絡是重要環節。提供相關程式碼片段、檔案內容和專案結構資訊,取得最實用的回覆。您可能需要反覆嘗試,才能找到適當的平衡點:資訊過多可能會誤導 Gemini,資訊過少則無法提供足夠的背景資訊,讓 Gemini 協助您。使用可用功能授予 Gemini 存取必要背景資訊的權限:
- 附上圖片,提供您設想的 UI 或想瞭解的應用程式架構。
- 附加檔案,醒目顯示程式碼集中的相關部分。
- 使用
.aiexclude
檔案,讓 Gemini 忽略程式碼集中的特定部分。 - 使用 AGENTS.md 檔案提供專案專屬的指示,並與團隊共用。使用 AGENTS.md 檔案時,請使用 Markdown 標頭和格式,清楚說明指令。
- 使用代理模式時,請設定 MCP 伺服器,透過外部環境擴充 Gemini 的知識和功能。
要求說明
如果看不懂 Android Studio 中 Gemini 的回覆,請要求說明。這很適合用來瞭解及驗證所提議的解決方案是否適合您的用途。如果回覆內容與預期不符,可能是 Gemini 有誤,要求說明可讓 Gemini 自行修正。
反覆調整指令
與同事合作時,有時需要來回溝通,才能清楚瞭解工作和預期結果。在 Android Studio 中使用 Gemini 時也是如此。如果 Gemini 的初步回覆不夠完善,請回覆並提供意見和改善建議。如果根據建議改善了回覆內容,請更新提示庫中的項目或 AGENTS.md 檔案,將建議納入原始提示。