O Android 16 QPR2 introduziu o readback da unidade de processamento de tela (DPU) de produção. O readback da DPU foi introduzido pela primeira vez no Android 9 para testar a saída do Hardware Composer (HWC), aproveitando um bloco de hardware para "ler" os pixels na tela na memória acessível à CPU. É possível usar o readback da DPU na produção para casos de uso que exigem a captura de conteúdo em tela cheia.
Casos de uso
O hardware de readback é adequado para:
Animações que exigem a transformação de um estado estático de toda a tela, 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 readback não é adequado para:
Capturar um subconjunto do estado da tela que exclui ou oculta outros conteúdos visíveis na tela
Capturar conteúdo protegido por DRM e transmiti-lo para um ambiente não seguro
Ativar o readback
Para ativar o readback:
Use
IComposerClient::getReadbackBufferAttributespara especificar que a implementação do HWC informa os atributos do buffer de readback.Ative a propriedade do sistema
debug.sf.productionize_readback_screenshot.Isso sinaliza ao sistema que o readback da DPU é eficiente e livre de bugs visuais, além de estar pronto para uso em produção.
Use a API do sistema
ScreenCapturepara solicitar uma captura de tela com suporte da DPU. O sistema tenta usar o readback da DPU, se possível, mas os clientes da API podem exigir isso transmitindo a flagCAPTURE_MODE_REQUIRE_OPTIMIZED.
Testar o readback
Recomendamos testar várias jornadas do usuário, com foco no desempenho, na correção e no consumo de energia. Teste os casos de uso listados anteriormente para verificar se o desempenho é aceitável e se não há bugs visuais, como oscilação da tela ou mudança de cor não intencional.