為配合主幹穩定開發模型,並確保生態系統的平台穩定性,我們將於 2026 年起,在第 2 季和第 4 季將原始碼發布至 AOSP。如要建構及貢獻 AOSP,建議使用 android-latest-release,而非 aosp-main。android-latest-release 資訊清單分支版本一律會參照推送至 AOSP 的最新版本。詳情請參閱「Android 開放原始碼計畫變更」一文。
Google uses AI technology to translate content into your preferred language. AI translations can contain errors.
硬體抽象層 (HAL) 總覽
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
硬體抽象層 (HAL) 是一種抽象層,具有標準介面,供硬體供應商實作。硬體供應商可透過 HAL 實作裝置專屬的低階功能,不會影響或修改高階層的程式碼。
必要條款
以下列出本節文件中使用的術語定義:
- Android 介面定義語言 (AIDL)
- 類似 Java 的語言,用於定義介面,與使用的程式設計語言無關。AIDL 可讓 HAL 用戶端與 HAL 服務進行通訊。
- 繫結 HAL
- 使用繫結器處理序間通訊 (IPC) 呼叫與其他程序通訊的 HAL。繫結 HAL 會在與使用這些 HAL 的用戶端不同的程序中執行。Binderized HAL 會向服務管理員註冊,以便用戶端存取其功能。為 Android 8 以上版本編寫的 HAL 會經過繫結。
- HAL 用戶端
- 存取 HAL 服務的程序。
- HAL 介面
- HAL 用戶端和服務都使用這個通用介面進行通訊。
- HAL 服務
硬體專用程式碼,例如與特定裝置相機通訊的程式碼。您必須在供應商分割區中,為目標發布版本導入相容性矩陣列出的所有必要 HAL。如要進一步瞭解相容性矩陣,請參閱「相容性矩陣」。
您也可以建立新的 HAL 介面,或擴充 HAL 的介面,以支援硬體的獨特功能。
- 硬體介面定義語言 (HIDL)
用來定義介面的語言,與使用的程式設計語言無關。HIDL 可讓 HAL 用戶端與 HAL 服務進行通訊。
- 相同程序 (SP) HAL
一組受限的包裝 HAL。Google 會控管該組合的成員資格。SP HAL 包括:
- 穩定的 C 對應器 5 HAL
- OpenGL
- Vulkan
- android.hidl.memory@1.0 (由 Android 系統提供,一律會包裝)
- android.hardware.renderscript@1.0
- 包裝的 HAL
在 Android 8 之前建立的 HAL 服務,但已封裝在 AIDL 或 HIDL 包裝函式中,可與 Android 8 以上版本搭配使用。
後續步驟
這個頁面中的內容和程式碼範例均受《內容授權》中的授權所規範。Java 與 OpenJDK 是 Oracle 和/或其關係企業的商標或註冊商標。
上次更新時間:2025-12-03 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2025-12-03 (世界標準時間)。"],[],[]]