O Android 16 QPR2 introduziu a leitura de volta da unidade de processamento de tela (DPU) de produção. A leitura de volta da DPU foi introduzida no Android 9 para testar a saída do Hardware Composer (HWC), aproveitando um bloco de hardware para "ler de volta" pixels na tela para a memória acessível à CPU. Você pode usar o readback de DPU em produção para casos de uso que exigem a captura de conteúdo em tela cheia.
Casos de uso
O hardware de leitura em voz alta é adequado para:
Animações que exigem a transformação de um estado estático da tela inteira, como animações de desligamento
Casos de uso de inteligência artificial (IA) que exigem conhecimento do conteúdo da tela em um enclave seguro
Testes automatizados
O hardware de leitura não é adequado para:
Capturar um subconjunto do estado da tela que exclui ou oculta outro conteúdo visível na tela
Capturar conteúdo protegido por DRM e transmiti-lo para um ambiente inseguro
Ativar a leitura
Para ativar a leitura em voz alta:
Use
IComposerClient::getReadbackBufferAttributespara especificar que a implementação do HWC informa atributos do buffer de leitura.Ative a propriedade do sistema
debug.sf.productionize_readback_screenshot.Isso indica ao sistema que o readback de DPU tem bom desempenho e não tem bugs visuais, estando pronto para uso em produção.
Use a API do sistema
ScreenCapturepara solicitar uma captura de tela com suporte de DPU. O sistema tenta usar o readback de DPU, se possível, mas os clientes da API podem exigir isso transmitindo a flagCAPTURE_MODE_REQUIRE_OPTIMIZED.
Teste de leitura
Recomendamos testar várias jornadas do usuário, focando na performance, na correção e no consumo de energia. Teste os casos de uso listados anteriormente para verificar se o desempenho está aceitável e se não há bugs visuais, como oscilação da tela ou mudança de cor não intencional.