Google se compromete a promover la equidad racial para las comunidades negras. Ver cómo.
Se usó la API de Cloud Translation para traducir esta página.
Switch to English

Objeto de interfaz de proveedor

Este documento describe el diseño del objeto de interfaz del proveedor ( objeto VINTF), que agrega información relevante sobre un dispositivo y hace que esa información esté disponible a través de una API consultable .

Diseño de objetos VINTF

Un objeto VINTF recopila parte de la información que necesita directamente del dispositivo. Otros aspectos, como los manifiestos, se describen estáticamente en XML.

Figura 1. Manifiestos, matrices de compatibilidad e información recopilable en tiempo de ejecución

El diseño de objetos VINTF proporciona lo siguiente para los componentes del dispositivo y el marco:

Para el dispositivo Para el marco
  • Define un esquema para el componente estático (el archivo de manifiesto del dispositivo ).
  • Agrega soporte de tiempo de compilación para definir el archivo de manifiesto del dispositivo para un dispositivo determinado.
  • Define la API consultable en tiempo de ejecución que recupera el archivo de manifiesto del dispositivo (junto con la otra información recopilable en tiempo de ejecución) y los empaqueta en el resultado de la consulta.
  • Define un esquema para el componente estático (el archivo de manifiesto de marco ).
  • Define la API consultable en tiempo de ejecución que recupera el archivo de manifiesto del marco y lo empaqueta en el resultado de la consulta.

El objeto VINTF debe ser confiable y proporcionar la misma información completa independientemente de cuándo se solicite el objeto (ver Advertencias ).

Manifiestos y matrices

A partir de Android 8.0, una API de tiempo de ejecución consulta lo que hay en el dispositivo y envía esa información al servidor de actualización Over-the-Air (OTA) y otras partes interesadas (como CTS DeviceInfo ). Parte de la información se recupera en tiempo de ejecución y otra parte está estáticamente definida.

  • El manifiesto del dispositivo describe el componente estático de lo que el dispositivo puede proporcionar al marco.
  • La matriz de compatibilidad del marco describe lo que el marco de Android espera de un dispositivo dado. La matriz es una entidad estática cuya composición se determina manualmente durante el desarrollo de la próxima versión del marco de Android.
  • El manifiesto del marco describe los servicios de alto nivel que el marco puede proporcionar al dispositivo.
  • La matriz de compatibilidad de dispositivos describe los servicios que la imagen del proveedor requiere del marco. Su composición se determina manualmente durante el desarrollo del dispositivo.

Estos dos pares de manifiestos y matrices deben conciliarse en el momento de la OTA para garantizar que un dispositivo pueda obtener actualizaciones del marco que sean compatibles con las capacidades del dispositivo. En general, un manifiesto describe lo que se proporciona y una matriz de compatibilidad describe lo que se requiere.

Esta sección incluye los siguientes detalles sobre manifiestos y matrices:

  • Los manifiestos definen el manifiesto del dispositivo, el manifiesto del marco y el esquema del archivo de manifiesto.
  • Las matrices de compatibilidad definen el esquema para la matriz de compatibilidad.
  • El ciclo de vida de FCM detalla cómo los HAL de HIDL son desaprobados y eliminados y cómo se modifican los archivos de FCM para reflejar el estado de la versión de HAL.
  • DM Development describe cómo los proveedores pueden definir y declarar la versión de Target FCM en el manifiesto del dispositivo para nuevos dispositivos o implementar nuevas versiones de HAL e incrementar la versión de Target FCM al actualizar la imagen del proveedor para dispositivos antiguos.
  • Reglas de coincidencia define las reglas para una coincidencia exitosa entre una matriz de compatibilidad y un manifiesto.