Das Framework funktioniert weiterhin mit „health@1.0“, bis es gemäß dem Zeitplan für die Einstellung von HAL vollständig eingestellt wird.
Wenn „health@1.0“ eingestellt wird (Eintrag aus der Framework-Kompatibilitätsmatrix entfernt), müssen auch healthd
und libbatterymonitor
aus dem System entfernt werden, um unbekanntes Verhalten von „healthd“ zu vermeiden. Da „health@1.0“ eine optionale HAL ist und alle healthd
-Abhängigkeiten von „health@1.0“ durch NULL-Prüfungen geschützt sind, sollte es bei der Einstellung keine Probleme geben.
Wenn Android den alten Codepfad (healthd, health@1.0) entfernt, wird die Health@1.0 HAL gemäß dem Zeitplan für die Einstellung eingestellt. Außerdem werden unter Android folgende Funktionen entfernt:
- healthd-Abhängigkeit im Framework
- gesund
- HAL-Definitionenbibliothek für health@1.0 aus dem System
- health@1.0-Eintrag in der Framework-Kompatibilitätsmatrix
healthd entfernen
Für Geräte, die mit Android 9 ausgeliefert werden, und Geräte, die auf Android 9 umgestellt werden und die Health 2.0 HAL im neuen Anbieter-Image bereitstellen, empfehlen wir, healthd
aus dem System-Image zu entfernen, um Speicherplatz zu sparen und die Bootzeit zu verkürzen.
Gehen Sie dazu so vor:
Entfernen Sie
healthd
undhealthd.rc
aus dem System-Image, indem Sie der gerätespezifischen Implementierung in Soong die folgende Zeile hinzufügen:cc_binary { name: "android.hardware.health@2.0-service.device_name" overrides: ["healthd"], // ... }
Wenn sich das Modul in Make befindet, gehen Sie so vor:
LOCAL_MODULE_NAME := \ android.hardware.health@2.0-service.device_name LOCAL_OVERRIDES_MODULES := healthd
Wenn die Standardimplementierung
android.hardware.health@2.0-service
installiert ist, implementieren Sie stattdessen eine gerätespezifischeandroid.hardware.health@2.0-service.device_name
. Weitere Informationen finden Sie unter Zustand implementieren.