Esta página descreve a organização do código-fonte da Segurança de exibição.
Para mais informações, consulte o README.md em cada diretório.
Clonar o repositório
Para acessar o repositório, entre em contato com seu gerente técnico de contas do Google.
Framework
Esse diretório contém os principais componentes do framework de segurança de display.
| Diretório | Finalidade |
|---|---|
api/har-platform-api |
Coleção de abstrações de subsistema de plataforma para criar apps de renderização de alta disponibilidade (HAR, na sigla em inglês) em plataformas compatíveis. |
api/har-types |
Tipos de camada de abstração de hardware. |
asset-manager |
Ferramentas para gerenciar recursos de aplicativos de tempo de execução. |
audio/har-audio |
Crate para processar a reprodução de áudio HAR. |
customizations |
Contém APIs, implementações e macros de derivação para produzir personalizações de design de um app baseado em HAR. |
derive/har-ui-model-derive |
Macros procedurais para derivar características comuns usadas pelo sistema de modelo de interface do HAR. |
display_list |
Define as estruturas e os componentes que descrevem uma cena para renderização, dissociada de qualquer back-end gráfico. |
graphics/external-image |
Uma caixa para representações de imagens externas. |
graphics/har-gl-context |
Define a API de contexto gráfico e inclui várias implementações em plataformas compatíveis, tanto para renderização na tela quanto fora dela. |
graphics/impeller |
API Rust segura para o Impeller, com base nas vinculações FFI geradas. |
graphics/impeller-renderer |
Implementação de renderizador de alto nível usando o Impeller como mecanismo de renderização de suporte. |
har-layout |
Um wrapper para o Taffy calcular o layout das visualizações em HAR. |
har-monitoring |
Kit de ferramentas de monitoramento de performance. |
har-utils |
Utilitários comuns. |
harry |
Framework a ser usado como base para criar aplicativos HAR. |
harry-animation |
Uma API de animação e implementação para Harry |
squoosh |
Representação intermediária e mecanismo de animação para parâmetros de visualização no framework Harry. |
task-scheduler |
Utilitário para programar tarefas e executá-las em uma linha de execução em segundo plano após um atraso especificado. |
test_suites |
Pacotes de teste para executar testes de unidade de segurança da tela |
Pré-versões
Esse diretório contém bibliotecas e recursos pré-criados.
| Diretório | Finalidade |
|---|---|
impeller/ |
Bibliotecas pré-criadas para o mecanismo de gráficos Impeller, organizadas por SO e arquitetura. |
impeller-rs-bindgen/ |
Vinculações de FFI do Rust para o Impeller. |
impeller-rs-bindgen-wrapper/ |
Wrapper de API para vinculações do Impeller. |
Referência
Esse diretório contém a implementação de referência do HAR, implementações específicas da plataforma, ferramentas e artefatos de teste.
| Diretório | Finalidade |
|---|---|
audio/tinyalsa-rs |
Vinculações Rust FFI para a biblioteca de áudio Tinyalsa. |
audio/tinyalsa-audio |
Biblioteca para reprodução de áudio e gerenciamento de dispositivos, com base em vinculações FFI geradas pela caixa `tinyalsa-rs`. |
camera/emulated-camera |
Fornece uma implementação de uma câmera emulada usando a trait "Camera" de "har-platform-api". |
graphics/gl-helpers |
Crate de utilitário que contém funções auxiliares do GL. |
har-user-input-evdev/ |
Implementa um processamento de entrada básico baseado em evdev. Compatível com eventos de teclado, mouse e toque (único e multitoque) |
harry-app/ |
Implementação de referência de um aplicativo renderizador portátil de alta disponibilidade (HAR) criado usando o framework "harry". |
harry-app-core/ |
Lógica principal do aplicativo, gerenciamento de estado e definições de modelo de UI para o app de referência `harry-app`. |
harry-app-utils/ |
Funções de utilitário e módulos auxiliares para o app de referência "harry-app". |
harry-control-api/ |
APIs de controle para o app de referência "harry-app". |
harry-grpcio-server/ |
Servidor gRPC (com base em grpcio). Isso só é usado ao criar a versão do Android com o soong. |
harry-tonic-server/ |
Servidor gRPC (baseado em tônico). Isso só é usado ao criar a versão do Linux com o Cargo. |
harry-vehicle-data-grpc/ |
Código gRPC de dados do veículo, gerado nos arquivos proto de dados do veículo. |
i18n/harry-app-i18n |
Serviços de internacionalização e localização para HAR. |
i18n/i18n-protos |
Define mensagens protobuf e geração de código Rust para dados de i18n. |
libyuv-rs/ |
Vinculações Rust para libyuv. |
platforms/har-log |
Define implementações de registros e rastreamentos para todas as plataformas compatíveis. |
platforms/har-looper-headless |
Uma implementação de looper independente de plataforma para renderização headless. |
platforms/har-platform-android |
Fornece implementações específicas do Android das abstrações de plataforma `har-platform-api`. |
platforms/har-platform-linux |
Fornece implementações específicas do Linux das abstrações de plataforma `har-platform-api`. |
platforms/harry-app-platform-specific |
A ponte de compilação condicional para harry-app, selecionando a implementação correta com base na plataforma selecionada. |
safety-monitor |
Implementação de um monitor de segurança de referência para Android. |
screencap |
Utilitário de captura de tela para extrair capturas de tela diretamente de framebuffers DRM |
vehicle-data-scripts |
Estruturas e lógica para criar sequências de dados de veículos programadas |
Serviço
Este diretório contém serviços do Android relacionados à segurança da tela.
| Diretório | Finalidade |
|---|---|
ds-cvd-toolkit |
Uma ferramenta de linha de comando para a segurança da tela que permite a inicialização de vários dispositivos Cuttlefish. |
emulator |
Suporte do emulador para sobreposições de recursos no momento da execução |
har-grpc-services |
Contém as definições de proto usadas na implementação de referência para estabelecer canais de comunicação entre o app HAR e a DriverUI e os serviços de dados do veículo. |
har-sdv-service* |
Fornece um pacote de serviços SDV usado para fornecer serviços de dados ao HAR utilizando o código gerado por arquivos proto. |
har-tracing-common |
Serviços de rastreamento de performance para HAR |
harry-prebuilt/ |
Componentes pré-criados do Harry (recursos, configurações etc.) |
ivi/ |
Componentes relacionados ao IVI (infoentretenimento no veículo) do Android |
libhar_graphics/ |
Biblioteca gráfica C++ para serviços HAR. |
pdk/ |
Metadados da versão do PDK |
product/ |
Configurações e recursos específicos do produto |
SdvCameraPreviewApp |
App de visualização da câmera para SDV. |
vehicledata |
Implementa um editor de túnel de dados SDV de dados de veículo usando gRPC. |
Utils
Esse diretório contém utilitários gerais para implementações de referência e testes.
| Diretório | Finalidade |
|---|---|
asset-manager-cli |
Fornece uma interface de linha de comando para gerar pacotes de recursos. |
dcf-info/ |
Ferramenta para extrair metadados de um DCF (documento do Figma de design serializado do Compose). |
figma-utils |
Fornece um wrapper de linha de comando para "figma_import", para buscar documentos serializados do Figma. |
gauge-test |
App projetado para testar e demonstrar elementos de interface do usuário de discagem e medidor. |
gui-playground-app |
Ambiente de sandbox para testar novos recursos de animação e interface. |
har-platform-tests |
Conjunto de testes de integração para implementações de traços específicos da plataforma. |
har-rendering-parity |
Ferramenta visual para verificar a paridade de renderização entre HAR, DesignCompose e Figma. |
harry-rpc-client |
Fornece uma interface de linha de comando para enviar comandos ao Harry via RPC. |
human-readable-report-generator |
Utilitário para verificação visual de artefatos de segurança. |
ktx-utils |
Fornece utilitários para codificar e decodificar arquivos de textura Khronos KTX 2.0. |
list-test-app |
Serve como um ambiente de teste e demonstração para o gerenciamento de listas no HAR. |
transfer-localizations |
Utilitário para converter arquivos de localização XML do Android para o formato proto HAR. |
variable-density-analyzer |
Analisa um documento do Figma e calcula a proporção de nós para variáveis de design. |