該框架將繼續與 health@1.0 配合使用,直到根據標準HAL 棄用時間表完全棄用為止。當 health@1.0 被棄用(從框架相容性矩陣中刪除條目)時, healthd
和libbatterymonitor
也必須從系統中刪除,以避免 healthd 出現未知行為。由於 health@1.0 是可選的 HAL,且 health@1.0 的所有healthd
依賴項均受到 NULL 檢查的保護,因此棄用時不應出現任何問題。
當 Android 刪除舊程式碼路徑(healthd、health@1.0)時,Health@1.0 HAL 將根據棄用時間表棄用。此外,Android 還刪除了以下內容:
- 框架中的 healthd 依賴
- 健康
- health@1.0 系統中的 HAL 定義庫
- health@1.0 框架相容性矩陣中的條目
刪除健康
對於使用 Android 9 啟動的設備以及升級到 Android 9 且在新供應商映像中提供 Health 2.0 HAL 的設備,我們建議從系統映像中刪除healthd
以節省磁碟空間並加快啟動時間。
為此:
透過將以下行新增至 Soong 中的裝置特定實作中,從系統映像中刪除
healthd
和healthd.rc
:cc_binary { name: "android.hardware.health@2.0-service.device_name" overrides: ["healthd"], // ... }
或者,如果模組位於 Make 中:
LOCAL_MODULE_NAME := \ android.hardware.health@2.0-service.device_name LOCAL_OVERRIDES_MODULES := healthd
如果安裝了預設實作
android.hardware.health@2.0-service
,請改為實作裝置特定的android.hardware.health@2.0-service.device_name
。有關更多信息,請參閱實施健康。