Microsoft Lens è un prodotto che semplifica la lettura delle immagini di documenti e lavagne. Il team di Microsoft Lens temeva che l'API Fotocamera1, un'API framework Android che include il supporto per fotocamere e funzionalità della fotocamera, non funzionasse in modo coerente sui dispositivi Android moderni. Hanno deciso di costruire qualcosa di nuovo e hanno deciso che il percorso di sviluppo più veloce era usare CameraX per ottenere le funzionalità moderne di uno smartphone con fotocamera.
Cosa hanno fatto
Microsoft ha deciso di usare FotocameraX per la sua suite di app di produttività che utilizzano Microsoft Lens. CameraX è una libreria di supporto open source per Android Jetpack, che consente agli sviluppatori di creare più facilmente le funzionalità della fotocamera nelle app per Android. CameraX si integra con tutti gli strumenti di Microsoft Lens per garantire l'uso di immagini di alta qualità su app selezionate. CameraX migliora anche l'esperienza degli sviluppatori fornendo un'API più semplice e funziona sul 94% dei dispositivi Android. Passando a CameraX, il team di Microsoft Lens è stato in grado di risolvere i propri problemi di prestazioni, aumentare la produttività degli sviluppatori e ridurre il time to go to market.
Risultati
Il team di Microsoft Lens ha scoperto che l'implementazione della libreria CameraX ha fatto risparmiare molto tempo agli sviluppatori, grazie al minor numero di cicli di test e ottimizzazione. Secondo le stime, CameraX ha dedicato al team di tecnici circa quattro mesi di impegno per l'integrazione, rispetto a Camera2, che avrebbe richiesto circa sei mesi.
"Con CameraX è più facile configurare attributi come risoluzione, proporzioni, rotazione dell'immagine, qualità di acquisizione, ecc. rispetto alle API Camera1, che hanno contribuito all'impegno e al tempo di integrazione. CameraX gestisce internamente lo stato (per aprire/chiudere la videocamera) mentre gli utenti passano da un'applicazione all'altra ha ridotto le linee di codice da integrare e ha anche aiutato la produttività degli sviluppatori a concentrarsi sulla logica di business anziché sul ripristino dello stato delle app", ha dichiarato Vishal Bhatnagar, Principal Software Engineer Manager di Microsoft.
L'utilizzo di CameraX ha portato Microsoft a migliorare le prestazioni di lancio e acquisizione rispetto a Camera1. Le prestazioni dei dispositivi Android moderni sono aumentate del doppio durante il lancio e l'acquisizione e alcuni dispositivi hanno persino triplicato le prestazioni (anche se questo dato varia in base al dispositivo). Inoltre, l'attivazione della funzionalità Core Scan è stata più facile rispetto alle stime per Fotocamera2. Per quanto riguarda la frammentazione dei dispositivi, CameraX nasconde efficacemente le varianti di Camera2 di molti dispositivi nell'implementazione su molti dispositivi OEM.
Il team Microsoft sta attualmente integrando CameraX in altre app per Android, come Office, Teams, OneDrive, Word, Excel, PowerPoint, Microsoft Lens e My Hub. Tutte queste app utilizzano FotocameraX per la funzionalità di acquisizione delle immagini in scenari quali la scansione di documenti e l'estrazione da immagine a entità (ad esempio immagine in tabella, immagine in testo). Il team di Microsoft ha inoltre in programma di implementare a breve CameraX in Outlook e sta esaminando il suo potenziale per altre app, come Kaizala.
Inizia
Consulta la nostra documentazione per saperne di più su come implementare CameraX nella tua app.