Escolher uma biblioteca de câmera

Se você quer adicionar a funcionalidade de câmera a um app Android, há três opções principais:

Para a maioria dos desenvolvedores, o CameraX é recomendado. O CameraX é uma biblioteca do Jetpack que oferece suporte à grande maioria dos dispositivos Android (Android 5.0 ou versões mais recentes) e fornece uma API consistente e de alto nível projetada para casos de uso comuns. O CameraX resolve problemas de compatibilidade de dispositivos para você não precisar adicionar códigos específicos do dispositivo ao app.

O CameraX é baseado no pacote Camera2. Se você precisa de controle de câmera de baixo nível para oferecer suporte a casos de uso complexos, a Camera2 é uma boa opção, mas a API é mais complexa que a CameraX. Isso exige que você gerencie configurações específicas do dispositivo. Assim como o CameraX, o Camera2 funciona no Android 5.0 (nível 21 da API) e versões mais recentes.

A classe Camera original do Android foi descontinuada. Apps novos precisam usar o CameraX (recomendado) ou o Camera2. Os apps já existentes precisam migrar para aproveitar os novos recursos e evitar a perda de compatibilidade com dispositivos futuros.