Linguaggio

Camera Classe

Definizione

Attenzione

This class is obsoleted in this android platform

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video.

[Android.Runtime.Register("android/hardware/Camera", DoNotGenerateAcw=true)]
[System.Obsolete("This class is obsoleted in this android platform")]
public class Camera : Java.Lang.Object
[<Android.Runtime.Register("android/hardware/Camera", DoNotGenerateAcw=true)>]
[<System.Obsolete("This class is obsoleted in this android platform")>]
type Camera = class
    inherit Object
Ereditarietà
Attributi

Commenti

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video. Questa classe è un client per il servizio Camera, che gestisce l'hardware effettivo della fotocamera.

Per accedere alla fotocamera del dispositivo, è necessario dichiarare l'autorizzazione android.Manifest.permission#CAMERA nel manifesto Android. Assicurarsi inoltre di includere l'elemento <manifesto uses-feature> per dichiarare le funzionalità della fotocamera usate dall'applicazione. Ad esempio, se usi la fotocamera e la funzionalità messa a fuoco automatica, il manifesto deve includere quanto segue:

&lt;uses-permission android:name="android.permission.CAMERA" />
            &lt;uses-feature android:name="android.hardware.camera" />
            &lt;uses-feature android:name="android.hardware.camera.autofocus" />

Per scattare foto con questa classe, seguire questa procedura:

<ol><li>Ottenere un'istanza di Camera da #open(int).

<li>Ottenere le impostazioni esistenti (predefinite) con #getParameters().

<li>Se necessario, modificare l'oggetto restituito Camera.Parameters e chiamare #setParameters(Camera.Parameters).

<li>Call #setDisplayOrientation(int) per garantire l'orientamento corretto dell'anteprima.

<li><b Importante>/b<>: Passare un oggetto completamente inizializzato SurfaceHolder a #setPreviewDisplay(SurfaceHolder). Senza una superficie, la fotocamera non sarà in grado di avviare l'anteprima.

<li><b Importante>/b<>: Chiamare #startPreview() per avviare l'aggiornamento della superficie di anteprima. Prima di poter scattare un'immagine, è necessario avviare l'anteprima.

<li>Quando vuoi, chiama #takePicture(Camera.ShutterCallback, Camera.PictureCallback, Camera.PictureCallback, Camera.PictureCallback) per catturare una foto. Attendere che i callback forniscano i dati effettivi dell'immagine.

<li>Dopo aver preso una foto, la visualizzazione di anteprima verrà interrotta. Per scattare più foto, chiama #startPreview() di nuovo prima.

<li>Call #stopPreview() per interrompere l'aggiornamento della superficie di anteprima.

<li><b>Importante:</b> Chiamare #release() per rilasciare la fotocamera per l'uso da parte di altre applicazioni. Le applicazioni devono rilasciare immediatamente la fotocamera in android.app.Activity#onPause() (e ri-#open() in android.app.Activity#onResume()). </ol>

Per passare rapidamente alla modalità di registrazione video, seguire questa procedura:

<ol><li>Ottenere e inizializzare una fotocamera e avviare l'anteprima come descritto in precedenza.

<li>Call #unlock() per consentire al processo multimediale di accedere alla fotocamera.

<li>Passa la fotocamera a android.media.MediaRecorder#setCamera(Camera). Vedere android.media.MediaRecorder informazioni sulla registrazione video.

<li>Al termine della registrazione, chiamare #reconnect() per riapprere e bloccare nuovamente la fotocamera.

<li>Se lo si desidera, riavviare l'anteprima e scattare più foto o video.

<li>Call #stopPreview() e #release() come descritto in precedenza. </ol>

Questa classe non è thread-safe ed è destinata all'uso da un thread di eventi. La maggior parte delle operazioni a esecuzione prolungata (anteprima, messa a fuoco, acquisizione foto e così via) avviene in modo asincrono e richiama i callback in base alle esigenze. I callback verranno richiamati sul thread #open(int) dell'evento da cui è stato chiamato. I metodi di questa classe non devono mai essere chiamati da più thread contemporaneamente.

<attenzione forte>:</forti> Dispositivi basati su Android diversi possono avere specifiche hardware diverse, ad esempio valutazioni di classificazione e funzionalità di messa a fuoco automatica. Affinché l'applicazione sia compatibile con più dispositivi, non è consigliabile fare ipotesi sulle specifiche della fotocamera del dispositivo.

<div class="special reference"><h3>Developer Guides</h3>

Per altre informazioni sull'uso delle fotocamere, vedere la Guida per sviluppatori di fotocamere .

</div>

Questo membro è deprecato. È consigliabile usare la nuova android.hardware.camera2 API per le nuove applicazioni.

per android.hardware.Camera.

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.

Costruttori

Nome Descrizione
Camera(IntPtr, JniHandleOwnership)
Obsoleti.

Costruttore usato durante la creazione di rappresentazioni gestite di oggetti JNI; chiamato dal runtime.

Campi

Nome Descrizione
ActionNewPicture
Obsoleti.

Azione di trasmissione: una nuova immagine viene scattata dalla fotocamera e l'immissione dell'immagine è stata aggiunta all'archivio multimediale.

ActionNewVideo
Obsoleti.

Azione di trasmissione: un nuovo video viene registrato dalla fotocamera e l'immissione del video è stata aggiunta all'archivio multimediale.

Proprietà

Nome Descrizione
Class
Obsoleti.

Restituisce la classe di runtime di questo Objectoggetto .

(Ereditato da Object)
Handle
Obsoleti.

Handle per l'istanza di Android sottostante.

(Ereditato da Object)
JniIdentityHashCode
Obsoleti.

Ottiene il codice hash di identità assegnato a questo Java peer dal runtime di interoperabilità.

(Ereditato da Object)
JniManagedPeerState
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video.

(Ereditato da JavaObject)
JniPeerMembers
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video.

NumberOfCameras
Obsoleti.

Restituisce il numero di fotocamere fisiche disponibili nel dispositivo.

PeerReference
Obsoleti.

Ottiene il riferimento all'oggetto JNI per questo peer Java.

(Ereditato da Object)
ThresholdClass
Obsoleti.

Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice.

ThresholdType
Obsoleti.

Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice.

Metodi

Nome Descrizione
AddCallbackBuffer(Byte[])
Obsoleti.

Aggiunge un buffer preallocato alla coda del buffer di callback di anteprima.

AutoFocus(Camera+IAutoFocusCallback)
Obsoleti.

Avvia lo stato attivo automatico della fotocamera e registra una funzione di callback da eseguire quando la fotocamera è attiva.

CancelAutoFocus()
Obsoleti.

Annulla qualsiasi funzione messa a fuoco automatica in corso.

Clone()
Obsoleti.

Crea e restituisce una copia di questo oggetto.

(Ereditato da Object)
Construct(JniObjectReference, JniObjectReferenceOptions)
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video.

(Ereditato da JavaObject)
Dispose()
Obsoleti.

Rilascia le risorse contenute in questo peer Java.

(Ereditato da Object)
Dispose(Boolean)
Obsoleti.

Rilascia le risorse contenute in questo peer Java.

(Ereditato da Object)
DisposeUnlessReferenced()
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video.

(Ereditato da JavaObject)
EnableShutterSound(Boolean)
Obsoleti.

Abilitare o disabilitare il suono dell'otturatore predefinito durante l'acquisizione di un'immagine.

Equals(Object)
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video.

(Ereditato da JavaObject)
Equals(Object)
Obsoleti.

Indica se un altro oggetto è "uguale a" questo.

(Ereditato da Object)
GetCameraInfo(Int32, Camera+CameraInfo)
Obsoleti.

Restituisce le informazioni su una particolare fotocamera.

GetHashCode()
Obsoleti.

Restituisce un valore di codice hash per l'oggetto .

(Ereditato da Object)
GetParameters()
Obsoleti.

Restituisce le impostazioni correnti per questo servizio Fotocamera.

JavaFinalize()
Obsoleti.

Chiamato dal Garbage Collector su un oggetto quando Garbage Collection determina che non sono presenti altri riferimenti all'oggetto .

(Ereditato da Object)
Lock()
Obsoleti.

Blocca nuovamente la fotocamera per impedire ad altri processi di accedervi.

Notify()
Obsoleti.

Riattiva un singolo thread in attesa del monitor dell'oggetto.

(Ereditato da Object)
NotifyAll()
Obsoleti.

Riattiva tutti i thread in attesa del monitor dell'oggetto.

(Ereditato da Object)
Open()
Obsoleti.

Crea un nuovo oggetto Camera per accedere alla prima fotocamera posteriore nel dispositivo.

Open(Int32)
Obsoleti.

Crea un nuovo oggetto Camera per accedere a una particolare fotocamera hardware.

Reconnect()
Obsoleti.

Riconnettersi al servizio fotocamera dopo l'uso di un altro processo.

Release()
Obsoleti.

Disconnette e rilascia le risorse dell'oggetto Camera.

SetAutoFocusMoveCallback(Camera+IAutoFocusMoveCallback)
Obsoleti.

Imposta il callback dello spostamento dello stato attivo automatico della fotocamera.

SetDisplayOrientation(Int32)
Obsoleti.

Impostare la rotazione in senso orario della visualizzazione dell'anteprima in gradi.

SetErrorCallback(Camera+IErrorCallback)
Obsoleti.

Registra un callback da richiamare quando si verifica un errore.

SetFaceDetectionListener(Camera+IFaceDetectionListener)
Obsoleti.

Registra un listener per ricevere una notifica sui visi rilevati nel frame di anteprima.

SetHandle(IntPtr, JniHandleOwnership)
Obsoleti.

Imposta la proprietà Handle.

(Ereditato da Object)
SetOneShotPreviewCallback(Camera+IPreviewCallback)
Obsoleti.

Installa un callback da richiamare per il frame di anteprima successivo, oltre a visualizzarlo sullo schermo.

SetParameters(Camera+Parameters)
Obsoleti.

Modifica le impostazioni per questo servizio Fotocamera.

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video.

(Ereditato da JavaObject)
SetPreviewCallback(Camera+IPreviewCallback)
Obsoleti.

Installa un callback da richiamare per ogni fotogramma di anteprima oltre a visualizzarli sullo schermo.

SetPreviewCallbackWithBuffer(Camera+IPreviewCallback)
Obsoleti.

Installa un callback da richiamare per ogni fotogramma di anteprima, usando i buffer forniti con #addCallbackBuffer(byte[]), oltre a visualizzarli sullo schermo.

SetPreviewDisplay(ISurfaceHolder)
Obsoleti.

Imposta l'oggetto da utilizzare per l'anteprima Surface in tempo reale.

SetPreviewTexture(SurfaceTexture)
Obsoleti.

Imposta l'oggetto da utilizzare per l'anteprima SurfaceTexture in tempo reale.

SetZoomChangeListener(Camera+IOnZoomChangeListener)
Obsoleti.

Registra un listener per ricevere una notifica quando il valore di zoom viene aggiornato dal driver della fotocamera durante lo zoom uniforme.

StartFaceDetection()
Obsoleti.

Avvia il rilevamento dei volti.

StartPreview()
Obsoleti.

Avvia l'acquisizione e il disegno di fotogrammi di anteprima sullo schermo.

StartSmoothZoom(Int32)
Obsoleti.

Esegue lo zoom verso il valore richiesto senza problemi.

StopFaceDetection()
Obsoleti.

Arresta il rilevamento del viso.

StopPreview()
Obsoleti.

Arresta l'acquisizione e il disegno di fotogrammi di anteprima sulla superficie e reimposta la fotocamera per una chiamata futura a #startPreview().

StopSmoothZoom()
Obsoleti.

Arresta lo zoom uniforme.

TakePicture(Camera+IShutterCallback, Camera+IPictureCallback, Camera+IPictureCallback, Camera+IPictureCallback)
Obsoleti.

Equivalente a

TakePicture(Camera+IShutterCallback, Camera+IPictureCallback, Camera+IPictureCallback)
Obsoleti.

Scatta una foto. La visualizzazione di anteprima si arresta dopo l'acquisizione; chiamare StartPreview() prima di scattare un'altra foto.

ToArray<T>()
Obsoleti.

Crea una matrice gestita da questo wrapper di matrice Java.

(Ereditato da Object)
ToString()
Obsoleti.

Restituisce una rappresentazione di stringa dell'oggetto .

(Ereditato da Object)
Unlock()
Obsoleti.

Sblocca la fotocamera per consentire a un altro processo di accedervi.

UnregisterFromRuntime()
Obsoleti.

Annulla la registrazione di questo Java peer dal runtime di interoperabilità.

(Ereditato da Object)
Wait()
Obsoleti.

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo <>una notifica</em> o <em>interrotto</em>.

(Ereditato da Object)
Wait(Int64, Int32)
Obsoleti.

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo<> una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale.

(Ereditato da Object)
Wait(Int64)
Obsoleti.

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo<> una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale.

(Ereditato da Object)

Eventi

Nome Descrizione
FaceDetection
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video.

ZoomChange
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video.

Implementazioni dell'interfaccia esplicita

Nome Descrizione
IJavaPeerable.Disposed()
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video.

(Ereditato da JavaObject)
IJavaPeerable.Finalized()
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video.

(Ereditato da JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video.

(Ereditato da JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video.

(Ereditato da JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video.

(Ereditato da JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video.

(Ereditato da JavaObject)

Metodi di estensione

Nome Descrizione
GetJniTypeName(IJavaPeerable)
Obsoleti.

Ottiene il nome JNI del tipo dell'istanza selfdi .

JavaAs<TResult>(IJavaPeerable)
Obsoleti.

Provare a digitare selfTResult, verificando che la coercizione sia valida sul lato Java.

JavaCast<TResult>(IJavaObject)
Obsoleti.

Esegue una conversione del tipo di tipo controllato dal runtime Android.

JavaCast<TResult>(IJavaObject)
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, avviare/arrestare l'anteprima, scattare immagini e recuperare fotogrammi per la codifica per il video.

TryJavaCast<TResult>(IJavaPeerable, TResult)
Obsoleti.

Provare a digitare selfTResult, verificando che la coercizione sia valida sul lato Java.

Si applica a