El framework seguirá funcionando con health@1.0 hasta que quede obsoleto por completo según el programa estándar de baja de HAL.
Cuando health@1.0 deja de estar disponible (se quita la entrada de la matriz de compatibilidad del framework), también se deben quitar healthd
y libbatterymonitor
del sistema para evitar comportamientos desconocidos para Healthd. Como health@1.0 es un HAL opcional y todas las dependencias de healthd
en health@1.0 están protegidas por verificaciones NULL, no debería fallar nada cuando se dé de baja.
Cuando Android quita la ruta de acceso de código heredado (healthd, health@1.0), Health@1.0 HAL deja de estar disponible de acuerdo con el programa de baja. Además, Android también quita lo siguiente:
- Dependencia de healthd en el framework
- healthd
- Biblioteca de definición de HAL health@1.0 del sistema
- Entrada de health@1.0 en la matriz de compatibilidad del framework
Quita healthd
En el caso de los dispositivos que se lanzan con Android 9 y los que se actualizan a Android 9 que proporcionan el HAL de Health 2.0 en la nueva imagen del proveedor, te recomendamos que quites healthd
de la imagen del sistema para ahorrar espacio en el disco y acelerar el tiempo de inicio.
Para ello, sigue estos pasos:
Para quitar
healthd
yhealthd.rc
de la imagen del sistema, agrega la siguiente línea a la implementación específica del dispositivo en Soong:cc_binary { name: "android.hardware.health@2.0-service.device_name" overrides: ["healthd"], // ... }
O bien, si el módulo está en Make, haz lo siguiente:
LOCAL_MODULE_NAME := \ android.hardware.health@2.0-service.device_name LOCAL_OVERRIDES_MODULES := healthd
Si está instalada la implementación predeterminada
android.hardware.health@2.0-service
, implementa unandroid.hardware.health@2.0-service.device_name
específico del dispositivo. Para obtener más información, consulta Cómo implementar Health.