Choisir une bibliothèque d'appareils photo

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, nous recommandons CameraX. 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 d'un contrôle d'appareil photo de faible niveau pour des cas d'utilisation complexes, Camera2 est l'option idéale. Toutefois, l'API est plus complexe que CameraX. Il vous oblige à gérer des configurations spécifiques à l'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 profiter des nouvelles fonctionnalités et éviter de perdre la compatibilité avec les futurs appareils.