Panoramica di CameraX Parte di Android Jetpack.
Competenze Android
Visualizza su GitHubCameraX
android skills add cameraxCameraX è una libreria Jetpack creata per semplificare lo sviluppo di app per fotocamere. Per le nuove app, consigliamo di iniziare con CameraX. Fornisce un'API coerente e facile da usare che funziona sulla maggior parte dei dispositivi Android, con compatibilità con le versioni precedenti di Android 5.0 (livello API 21). Se stai eseguendo la migrazione di un'app da Camera1, consulta la nostra guida alla migrazione da Camera1 a CameraX.
Vantaggi principali
CameraX migliora l'esperienza di sviluppo in diversi modi chiave.
Ampia compatibilità con i dispositivi
CameraX supporta i dispositivi con Android 5.0 (livello API 21) e versioni successive, che rappresentano oltre il 98% dei dispositivi Android esistenti.
Facilità di utilizzo
CameraX mette in evidenza i casi d'uso, che ti consentono di concentrarti sull'attività da svolgere anziché sulla gestione delle sfumature specifiche del dispositivo. Sono supportati i casi d'uso più comuni della videocamera:
- Anteprima: visualizza un'immagine sul display.
- Analisi delle immagini: accedi a un buffer senza problemi per utilizzarlo nei tuoi algoritmi, ad esempio per passarlo a ML Kit.
- Acquisizione di immagini: salva le immagini.
- Acquisizione video: salva video e audio.
Coerenza tra i dispositivi
Figura 2. Il lab di test automatico di CameraX garantisce un'esperienza API coerente su molti tipi di dispositivi e produttori.
Mantenere un comportamento coerente della videocamera è difficile. Devi considerare proporzioni, orientamento, rotazione, dimensioni dell'anteprima e dimensioni dell'immagine. Con CameraX, questi comportamenti di base funzionano e basta.
Gestiamo un laboratorio di test CameraX automatizzato che testa una varietà di comportamenti della fotocamera su una gamma di dispositivi e su tutte le versioni del sistema operativo a partire da Android 5.0. Questi test vengono eseguiti in modo continuativo per identificare e risolvere un'ampia gamma di problemi.
Estensioni per fotocamera
Figura 3. Un'immagine acquisita con l'effetto bokeh (ritratto) utilizzando CameraX.
CameraX dispone di un'API Extensions facoltativa che ti consente di accedere alle stesse funzionalità dell'app fotocamera nativa di un dispositivo con appena due righe di codice.
Le estensioni includono bokeh (ritratto), High Dynamic Range (HDR), modalità notturna e ritocco viso, tutte che richiedono il supporto del dispositivo.
Case study
Per scoprire come CameraX ha semplificato lo sviluppo per Monzo, consulta il case study.
Documentazione
- Architettura di CameraX
- Opzioni di configurazione
- Implementa un'anteprima
- Analisi delle immagini
- Acquisizione di immagini
- Acquisizione video
- Estensioni della fotocamera
- Trasforma l'output
- Rotazioni dei casi d'uso
- Dispositivi testati in laboratorio
Risorse aggiuntive
Per scoprire di più su CameraX, consulta le seguenti risorse aggiuntive.
Codelab
Esempio di codice