Panoramica di CameraX Componente di Android Jetpack.
CameraX è una libreria Jetpack creata per semplificare lo sviluppo di app per la fotocamera. Per le nuove app, ti consigliamo di iniziare con FotocameraX. Fornisce un'API coerente e facile da usare che funziona sulla stragrande maggioranza dei dispositivi Android, con compatibilità retroattiva con Android 5.0 (livello API 21). Se stai eseguendo la migrazione di un'app da Fotocamera1, consulta la nostra guida alla migrazione da Fotocamera1 a CameraX.
Vantaggi principali
CameraX migliora l'esperienza degli sviluppatori in diversi modi fondamentali.
Ampia compatibilità con i dispositivi
CameraX supporta dispositivi con Android 5.0 (livello API 21) e versioni successive, che rappresentano oltre il 98% dei dispositivi Android esistenti.
Facilità d'uso
CameraX mette in risalto i casi d'uso, che ti consentono di concentrarti sull'attività che devi svolgere invece di gestire le sfumature specifiche del dispositivo. Sono supportati i casi d'uso più comuni delle videocamere:
- Anteprima: visualizza un'immagine sul display.
- Analisi delle immagini: accedi senza problemi a un buffer da utilizzare negli algoritmi, ad esempio per passare a ML Kit.
- Acquisizione immagini: salva le immagini.
- Acquisizione video: salva video e audio.
Coerenza su più dispositivi

Figura 2. Il laboratorio di test automatizzato di CameraX garantisce un'esperienza coerente delle API su molti tipi di dispositivi e produttori.
Mantenere un comportamento coerente della videocamera non è facile. Devi considerare proporzioni, orientamento, rotazione, dimensioni dell'anteprima e dimensioni dell'immagine. Con CameraX, questi comportamenti di base funzionano correttamente.
Gestiamo un laboratorio di test automatizzato di CameraX che verifica una varietà di comportamenti delle videocamere su una gamma di dispositivi e in tutte le versioni di sistema operativo a partire da Android 5.0. Questi test vengono eseguiti regolarmente per identificare e risolvere un'ampia gamma di problemi.
Estensioni videocamera

Figura 3. Un'immagine acquisita con l'effetto bokeh (ritratto) utilizzando FotocameraX.
CameraX dispone di un'API Estensioni facoltativa che consente di accedere alle stesse caratteristiche e capacità dell'app per fotocamera nativa di un dispositivo con appena due righe di codice.
Le estensioni includono bokeh (ritratto), HDR (High Dynamic Range), modalità notturna e ritocco viso, che richiedono tutte il supporto del dispositivo.
Case study
Per scoprire in che modo CameraX ha semplificato lo sviluppo per Monzo, leggi il loro case study.
Documentazione
- Architettura di CameraX
- Opzioni di configurazione
- Implementare un'anteprima
- Analisi delle immagini
- Acquisizione di immagini
- Acquisizione video
- Estensioni fotocamera
- Trasformazione dell'output
- Rotazioni dei casi d'uso
- Dispositivi testati
Risorse aggiuntive
Per scoprire di più su CameraX, consulta le seguenti risorse aggiuntive.
Codelab
Esempio di codice