Si vous souhaitez ajouter des fonctionnalités d'appareil photo à une application Android, vous disposez de trois options principales :
Pour la plupart des développeurs, CameraX est recommandé. CameraX est une bibliothèque Jetpack qui prend en charge la grande majorité des appareils Android (Android 5.0 et versions ultérieures). Elle fournit une API cohérente de haut niveau conçue pour les cas d'utilisation courants. CameraX résout automatiquement les problèmes de compatibilité des appareils sans que vous ayez à ajouter de code spécifique à l'appareil à votre application.
CameraX est basé sur le package Camera2. Si vous avez besoin de contrôler un appareil photo de bas niveau pour des cas d'utilisation complexes, Camera2 est une bonne option, mais l'API est plus complexe que CameraX. Vous devez gérer les configurations spécifiques à chaque appareil. Tout comme CameraX, Camera2 fonctionne sous Android 5.0 (niveau d'API 21) ou version ultérieure.
La classe Camera Android d'origine est obsolète. Les nouvelles applications doivent utiliser CameraX (recommandé) ou Camera2. Les applications existantes doivent migrer pour bénéficier des nouvelles fonctionnalités et éviter de perdre la compatibilité avec les futurs appareils.