Android Studio for Platform (ASfP) 是建議使用的整合開發環境 (IDE),適用於開發 Android 平台,包括 Android Automotive OS (AAOS) 軟體定義車輛 (SDV) 專案。ASfP 提供豐富的程式碼編輯、建構、偵錯和測試工具,包括:
- AI 輔助功能 (Gemini)
- 支援 Rust、C、C++ 或 Java 語言
- 適用於 AAOS SDV 開發的實用整合功能 (例如 Cuttlefish 模擬器支援和 VSIDL 語言支援)
安裝平台版 Android Studio
如要安裝 ASfP:
請選擇最符合需求的版本:
- 穩定版:最新的正式版,建議大多數使用者採用
- Canary 版:搶先體驗最新功能,但可能較不穩定
按照下載頁面上的安裝說明操作。
設定 AAOS SDV 專案
如要設定 AAOS SDV 專案,請按照下列步驟操作:
確認您有權存取 AAOS SDV 程式碼存放區,並已初始化及同步處理本機結帳。如要瞭解如何存取來源及初始化存放區,請參閱「下載、建構及執行」一文。
啟動平台版 Android Studio。
如果是初次使用,請按照設定精靈的指示,自訂開發環境。
建立新專案:
- 如果沒有開啟專案,請按一下「歡迎」畫面上的「新增」。
- 如果您已開啟專案,請按一下「Open」,或從選單中依序選取「ASfP」>「Project」>「Import ASfP Project」。
在精靈中填入專案設定詳細資料:
存放區結帳:指定本機 AAOS SDV 原始碼結帳的根目錄絕對路徑 (例如
/path/to/sdv_source)。午餐目標:輸入 AAOS SDV 適用的午餐目標,例如 Cuttlefish 開發作業的目標
sdv_core_cf-trunk_staging-userdebug。如需更多可用目標,請參閱「選擇目標」。專案來源:列出要納入專案的初始目錄或模組,或按一下資料夾圖示開啟檔案系統瀏覽器,選取目錄。選取過多目錄或模組會影響 IDE 的索引和搜尋效能,因此請只加入相關目錄或模組。
語言支援:選取 Rust 和 C++ 做為支援的語言。
專案名稱:為專案命名,方便您辨識。
完成設定:按一下「完成」。ASfP 會建立專案結構和
.asfp-project設定檔。
ASfP 會自動啟動初始同步程序。ASfP 會分析原始碼、使用 Soong 建構系統解決依附元件,並建構程式碼智慧功能所需的資訊。這可能需要相當長的時間,尤其是第一次同步處理時。
自訂專案
專案根目錄中的 .asfp-project 檔案可供進一步自訂。您可以編輯這個檔案,以執行下列操作:
- 新增或移除目錄和模組。
- 啟用對其他語言的支援,例如 C++ 或 Rust (預設為 Java 和 Kotlin)。
- 設定建構旗標。
如要變更設定檔,請依序選取「ASfP」>「Project」>「Open Config」。如需可用的設定選項,請參閱「專案總覽」。
偵錯及測試
如要在 ASfP 中偵錯及測試程式碼,請參閱「偵錯平台程式碼」和「使用 atest 測試平台程式碼」。
可用的整合項目
ASfP 隨附一些實用的 AAOS SDV 開發整合功能,包括支援 VSIDL 中的 Cuttlefish 和語言伺服器通訊協定 (LSP)。
Cuttlefish 外掛程式
使用者可透過 Cuttlefish 外掛程式,直接從 ASfP 建立及執行本機 Cuttlefish 裝置。
安裝外掛程式。
Cuttlefish 外掛程式已預先安裝在 ASfP 中,因此不需要設定。外掛程式需要裝置上安裝 Cuttlefish 工具。如有需要,請按照操作說明安裝 Cuttlefish 工具。
建立 Cuttlefish 裝置
如要建立新裝置,請按照下列步驟操作:
依序選取「Tools」>「裝置管理工具」,開啟「裝置管理工具」工具視窗。如果「裝置管理工具」已釘選在右側面板,也可以按一下「Running Devices」圖示開啟。
按一下「+」圖示,然後選取「建立 Cuttlefish 裝置」。
設定新的 Cuttlefish 裝置。您可以透過兩種方式建立 Cuttlefish 裝置:
從本機 Android 來源樹狀結構結帳:
- 選取與啟動設定對應的建構目標路徑 (詳情請參閱「選擇目標」)。
- 選取主機路徑。
- 視需要選取可用的裝置設定,或選取「無」以使用預設設定。
從標準設定 (使用這個選項,從單一設定建立多部裝置):
- 選取裝置設定的路徑。
- 視需要提供任何覆寫旗標,以覆寫設定選項。
等待 Cuttlefish 裝置建立完成,並新增至裝置管理工具的執行中裝置清單。
從「Running Devices」選單中選取 Cuttlefish 裝置。
如要啟動或停止個別 Cuttlefish 裝置,請點選裝置管理工具中裝置旁的停止或啟動圖示。
存取 Cuttlefish 裝置頁面
Cuttlefish 外掛程式的工具視窗會顯示「Cuttlefish Device」頁面,您可以在這裡存取螢幕鏡像功能。
如要開啟 Cuttlefish 工具視窗,請按一下左側面板上的「...」圖示,然後選取「Cuttlefish」。或者,您也可以在「Help」>「Find Action」選單項目中搜尋「Cuttlefish」。
VSIDL 中的語言伺服器通訊協定
在 VSIDL 中,LSP 提供豐富的 IDE 功能,可改善您在 ASfP 中處理 VSIDL 檔案 (副檔名為 .vsidl) 時的開發工作流程。
語意語法醒目顯示
LSP 伺服器會根據 VSIDL 檔案提供語法醒目顯示功能。
用途:醒目顯示關鍵字 (
service_bundle、publisher)、欄位 (package:、message:) 和常值。如何試用:開啟任何 VSIDL 檔案。檔案會以顏色編碼,區分結構關鍵字和使用者定義的 ID。
即時診斷 (錯誤和警告)
LSP 伺服器會持續驗證檔案,並即時回報問題。
用途:偵測整個目錄及其依附元件中的語法錯誤、無效型別參照和其他錯誤。
如何試用:在訊息名稱中輸入錯字 (例如
TiiirePressure),錯字下方會顯示紅色波浪線。將游標懸停在該字詞上即可查看錯誤訊息,或在 IDE 底部的「Problems」工具視窗中查看完整清單。
導航與智慧功能
您可以使用導覽和智慧功能,探索 VSIDL 目錄不同部分之間的關係。
自動完成:按下 Ctrl+Space,即可查看關鍵字、protobuf 訊息、RPC 服務、主題和頻道的建議。關鍵字建議會直接在完成選單中提供簡短實用的用途說明。LSP 也會提供
publisher或server等區塊的智慧程式碼片段,加快工作流程。前往定義:按住 Control 鍵並點選 (或按下 Control+B 鍵) 訊息、服務、主題或管道參照,即可直接跳至來源定義,即使來源定義位於不同的 VSIDL 或 protobuf 檔案中也沒問題。
尋找參照:將游標放在
publisher、subscriber、server或client關鍵字上,然後按下 Alt+Shift+F7,即可找出所有出現的位置。懸停資訊:將游標移至型別或屬性 (或按下 Ctrl+Q)。畫面上會顯示工具提示,內含文件註解 (如有)。
結構特徵
LSP 伺服器可協助您管理及瀏覽大型 VSIDL 檔案的結構:
文件符號 (大綱):按下 Control+F12 鍵,即可快速查看導覽工具提示,或開啟「結構」工具視窗 (按下 Control+Alt+7 鍵),查看檔案中所有套件和單元的樹狀檢視畫面。
摺疊範圍:按一下裝訂邊 (行號旁) 的「>」或「V」圖示,即可收合或展開大型邏輯區塊,例如
service_bundle或對應定義。文件格式:按下 Ctrl+Alt+L 鍵,即可自動重新格式化檔案,建立一致的縮排和間距。