Objeto da interface do fornecedor

Este documento descreve o design do objeto de interface do fornecedor. (objeto VINTF), que agrega informações relevantes sobre um dispositivo e faz essas informações disponíveis por meio de uma API consultável.

Design de objetos VINTF

Um objeto VINTF coleta algumas das informações necessárias diretamente do dispositivo. Outros aspectos, como os manifestos, são descritos estaticamente em XML

Figura 1. Manifestos, matrizes de compatibilidade e informações que podem ser coletadas pelo ambiente de execução.

O design do objeto VINTF oferece o seguinte para dispositivo e framework componentes:

Para o dispositivo Para o modelo
  • Define um esquema para o componente estático (o dispositivo arquivo de manifesto).
  • Adiciona suporte ao tempo de build para definir o arquivo de manifesto do dispositivo para um determinado dispositivo.
  • Define o consultável API no tempo de execução que recupera o arquivo de manifesto do dispositivo (junto com os outros informações coletadas pelo ambiente de execução) e os empacota no resultado da consulta.

O objeto VINTF precisa ser confiável e fornecer as mesmas informações completas independentemente de quando o objeto é solicitado (consulte Ressalvas).

Manifestos e matrizes

A partir do Android 8.0, uma API de tempo de execução consulta o que está no dispositivo e envia informações para o OTA atualizar o servidor e outras partes interessadas (como o CTS DeviceInfo). Algumas informações são recuperadas no momento da execução, ele é definido estaticamente.

  • O manifesto do dispositivo descreve o componente estático do que que o dispositivo pode oferecer para a estrutura.
  • A matriz de compatibilidade do framework descreve o que O framework do Android espera de um determinado dispositivo. A matriz é uma entidade estática cuja composição é determinada manualmente durante o desenvolvimento da próxima versão da estrutura do Android.
  • O manifesto do framework descreve serviços de alto nível que de infraestrutura pode oferecer ao dispositivo.
  • A matriz de compatibilidade do dispositivo descreve os serviços que ou a imagem do fornecedor exigem o framework. Sua composição é determinada manualmente durante o desenvolvimento do dispositivo.

Esses dois pares de manifestos e matrizes precisam ser reconciliados no momento do OTA para garantir que um dispositivo possa receber atualizações de framework compatíveis com o recursos. Em geral, um manifesto descreve o que é fornecido e uma matriz de compatibilidade descreve o que é necessário.

Esta seção inclui os seguintes detalhes sobre manifestos e matrizes:

  • Manifestos define o manifesto do dispositivo, o manifesto do framework e o esquema do arquivo de manifesto.
  • Compatibilidade Matrixes define o esquema da matriz de compatibilidade.
  • Detalhes do ciclo de vida do FCM como as HALs HIDL foram descontinuadas e removidas e como os arquivos do FCM são modificados para refletem o status da versão da HAL.
  • Desenvolvimento do DM descreve como os fornecedores podem definir e declarar a versão de destino do FCM no dispositivo. para novos dispositivos ou implementar novas versões da HAL e incrementar o Versão de destino do FCM ao fazer upgrade da imagem do fornecedor para dispositivos antigos.
  • Regras de correspondência define as regras para uma correspondência bem-sucedida entre uma matriz de compatibilidade e uma manifesto do aplicativo.