Прекращение поддержки здоровья @ 1.0

Фреймворк будет продолжать работать с [email protected] до тех пор, пока он не будет полностью объявлен устаревшим в соответствии со стандартным графиком устаревания HAL . Когда [email protected] устарел (запись удалена из матрицы совместимости фреймворков ), healthd и libbatterymonitor также должны быть удалены из системы, чтобы избежать неизвестного поведения для healthd. Поскольку [email protected] является необязательным HAL, а все зависимости healthd от [email protected] защищены проверками NULL, ничто не должно сломаться при устаревании.

Когда Android удаляет устаревший путь кода (healthd, [email protected]), HAL [email protected] устаревает в соответствии с графиком устаревания. Кроме того, Android также удаляет следующее:

  1. зависимость healthd в фреймворке
  2. здоровье
  3. [email protected] библиотека определений HAL из системы
  4. запись [email protected] в матрице совместимости фреймворка

Удаление здоровья

Для устройств, запускаемых с Android 9, и устройств, обновленных до Android 9, которые предоставляют HAL Health 2.0 в новом образе поставщика, мы рекомендуем удалить healthd из образа системы, чтобы сэкономить место на диске и ускорить время загрузки.

Для этого:

  1. Удалите healthd и healthd.rc из образа системы, добавив следующую строку в специфичную для устройства реализацию в Soong:

    cc_binary {
        name: "[email protected]_name"
        overrides: ["healthd"],
        // ...
    }
    

    Или, если модуль находится в Make:

    LOCAL_MODULE_NAME := \
        [email protected]_name
    LOCAL_OVERRIDES_MODULES := healthd
    

    Если установлена ​​реализация по умолчанию [email protected]_name , вместо нее реализуйте [email protected] для конкретного устройства. Дополнительные сведения см. в разделе Реализация работоспособности .