Scattare foto

Nota:questa pagina fa riferimento alla classe Fotocamera, che è stata ritirata. Ti consigliamo di utilizzare CameraX o, per casi d'uso specifici, Camera2. Sia CameraX che Camera2 supportano Android 5.0 (livello API 21) e versioni successive.

Questa lezione insegna come scattare una foto delegando il lavoro a un'altra app fotocamera disponibile dispositivo. Se preferisci sviluppare personalmente le funzionalità della videocamera, consulta Controllo della videocamera.)

Supponiamo che tu stia implementando un servizio meteorologico in crowdsourcing che crea una mappa meteorologica globale unendo immagini del cielo scattate dai dispositivi su cui è in esecuzione l'app client. Integrazione delle foto è solo una piccola parte della tua applicazione. Vuoi scattare foto con il minimo sforzo, non reinventare la fotocamera. Fortunatamente, la maggior parte dei dispositivi Android ha già almeno un'applicazione fotocamera installato. In questa lezione imparerai a scattare una foto al posto tuo.

Richiedi la funzionalità fotocamera

Se una funzione essenziale dell'applicazione sta scattando foto, limitane la visibilità sul Google Play su dispositivi dotati di videocamera. Per pubblicizzare il fatto che la tua applicazione dipende dalla disponibilità videocamera, metti un Tag <uses-feature> in del file manifest:

<manifest ... >
    <uses-feature android:name="android.hardware.camera"
                  android:required="true" />
    ...
</manifest>

Se l'applicazione utilizza una fotocamera per funzionare, ma non richiede una fotocamera, imposta Da android:required a false. In questo modo, Google Play consentirà ai dispositivi senza videocamera per scaricare l'applicazione. È quindi tua responsabilità verificare della videocamera in fase di esecuzione chiamando hasSystemFeature(PackageManager.FEATURE_CAMERA_ANY). Se una videocamera non è disponibile, devi disattivare le relative funzionalità.