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.
Le contenu et les exemples de code de cette page sont soumis aux licences décrites dans la Licence de contenu. Java et OpenJDK sont des marques ou des marques déposées d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/27 (UTC).
[null,null,["Dernière mise à jour le 2025/07/27 (UTC)."],[],[],null,["# Choose a camera library\n\n| **Note:** If you want to perform basic camera actions like capturing a photo or video using the device's default camera application, see [Camera intents](/training/camera/camera-intents).\n\nIf you want to add camera functionality to an Android app, you have three main options:\n\n- [CameraX](/media/camera/camerax)\n- [Camera2](/media/camera/camera2)\n- [Camera](/media/camera/camera-deprecated) (deprecated)\n\nFor most developers, [CameraX](/training/camerax) is recommended. CameraX is a Jetpack library that supports the vast majority of Android devices (Android 5.0 and higher) and provides a consistent, high-level API designed around common use cases. CameraX resolves device compatibility issues for you so that you don't have to add device-specific code to your app.\n\nCameraX is built on top of the [Camera2](/training/camera2) package. If you need low-level camera control to support complex use cases, Camera2 is a good option, but the API is more complex than CameraX. It requires you to manage device-specific configurations. Like CameraX, Camera2 works on Android 5.0 (API level 21) and higher.\n\nThe original Android [Camera](/training/camera-deprecated) class is deprecated. New apps should use CameraX (recommended) or Camera2, and existing apps should migrate to take advantage of new features and to avoid losing compatibility with future devices."]]