Share via


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, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di 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à
Camera
Attributi

Commenti

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

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 si usa la fotocamera e la funzionalità di 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 Fotocamera 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'inizializzazione SurfaceHolder completa 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. L'anteprima deve essere avviata prima di poter scattare un'immagine.

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

<li>Dopo aver eseguito un'immagine, la visualizzazione di anteprima verrà arrestata. Per scattare più foto, chiamare #startPreview() di nuovo prima.

<li>Chiama #stopPreview() per interrompere l'aggiornamento dell'area di anteprima.

<li><b Importante:</b>> Chiamata #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 acquisire nuovamente e ribloccare la fotocamera.

<li>Se desiderato, riavviare l'anteprima e scattare altre foto o video.

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

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

<p class="caution"><strong>Caution:</strong> Different Android-powered devices può avere specifiche hardware diverse, ad esempio le valutazioni dipixel e le funzionalità di messa a fuoco automatica. Affinché l'applicazione sia compatibile con più dispositivi, non è consigliabile fare ipotesi sulle specifiche della fotocamera del dispositivo.</P>

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

Per altre informazioni sull'uso di fotocamere, vedere la guida per sviluppatori di fotocamera .

</Div>

Metodo deprecato. È consigliabile usare la nuova android.hardware.camera2 API per le nuove applicazioni.

Documentazione java per android.hardware.Camera.

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal Android e usato in base ai termini descritti in 2.5 Attribution License Creative Commons 2.5 Attribution License.

Costruttori

Camera(IntPtr, JniHandleOwnership)
Obsoleti.

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

Campi

ActionNewPicture
Obsoleti.

Azione di trasmissione: una nuova immagine viene scattata dalla fotocamera e la voce dell'immagine è stata aggiunta al negozio multimediale.

ActionNewVideo
Obsoleti.

Azione di trasmissione: un nuovo video viene registrato dalla fotocamera e la voce del video è stata aggiunta al media store.

Proprietà

Class
Obsoleti.

Restituisce la classe di runtime di questo Objectoggetto .

(Ereditato da Object)
Handle
Obsoleti.

Handle all'istanza di Android sottostante.

(Ereditato da Object)
JniIdentityHashCode
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

(Ereditato da Object)
JniPeerMembers
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

NumberOfCameras
Obsoleti.

Restituisce il numero di fotocamere fisiche disponibili in questo dispositivo.

PeerReference
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

(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

AddCallbackBuffer(Byte[])
Obsoleti.

Aggiunge un buffer pre-allocato 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 di messa a fuoco automatica in corso.

Clone()
Obsoleti.

Crea e restituisce una copia di questo oggetto.

(Ereditato da Object)
Dispose()
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

(Ereditato da Object)
Dispose(Boolean)
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

(Ereditato da Object)
EnableShutterSound(Boolean)
Obsoleti.

Abilitare o disabilitare il suono dell'otturatore predefinito quando si esegue un'immagine.

Equals(Object)
Obsoleti.

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

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

Restituisce le informazioni su una determinata fotocamera.

GetHashCode()
Obsoleti.

Restituisce un valore del codice hash per l'oggetto.

(Ereditato da Object)
GetParameters()
Obsoleti.

Restituisce le impostazioni correnti per questo servizio Fotocamera.

JavaFinalize()
Obsoleti.

Chiamato dal Garbage Collector in un oggetto quando Garbage Collection determina che non sono presenti più 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 monitoraggio dell'oggetto.

(Ereditato da Object)
NotifyAll()
Obsoleti.

Riattiva tutti i thread in attesa del monitoraggio 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 determinata fotocamera hardware.

Reconnect()
Obsoleti.

Riconnettersi al servizio fotocamera dopo un altro processo usato.

Release()
Obsoleti.

Disconnette e rilascia le risorse dell'oggetto Camera.

SetAutoFocusMoveCallback(Camera+IAutoFocusMoveCallback)
Obsoleti.

Imposta il callback dello stato attivo automatico della fotocamera.

SetDisplayOrientation(Int32)
Obsoleti.

Impostare la rotazione in senso orario della visualizzazione di 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.

SetPreviewCallback(Camera+IPreviewCallback)
Obsoleti.

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

SetPreviewCallbackWithBuffer(Camera+IPreviewCallback)
Obsoleti.

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

SetPreviewDisplay(ISurfaceHolder)
Obsoleti.

Imposta l'oggetto da usare per l'anteprima Surface live.

SetPreviewTexture(SurfaceTexture)
Obsoleti.

Imposta l'oggetto da usare per l'anteprima SurfaceTexture live.

SetZoomChangeListener(Camera+IOnZoomChangeListener)
Obsoleti.

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

StartFaceDetection()
Obsoleti.

Avvia il rilevamento del viso.

StartPreview()
Obsoleti.

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

StartSmoothZoom(Int32)
Obsoleti.

Esegue lo zoom sul valore richiesto senza problemi.

StopFaceDetection()
Obsoleti.

Arresta il rilevamento dei volti.

StopPreview()
Obsoleti.

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

StopSmoothZoom()
Obsoleti.

Arresta lo zoom uniforme.

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

Equivalente a

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

Equivalente a

ToArray<T>()
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

(Ereditato da Object)
ToString()
Obsoleti.

Restituisce una rappresentazione in formato stringa dell'oggetto.

(Ereditato da Object)
Unlock()
Obsoleti.

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

UnregisterFromRuntime()
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

(Ereditato da Object)
Wait()
Obsoleti.

Causa l'attesa del thread corrente fino a quando non viene svegliata, in genere eseguendo>una notifica</em o <em interrotto</>em>>.<

(Ereditato da Object)
Wait(Int64)
Obsoleti.

Causa l'attesa del thread corrente fino a quando non viene svegliata, in genere <>eseguendo una notifica</em o <em interrotto/>>em>o fino a quando non è trascorsa< una determinata quantità di tempo reale.

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

Causa l'attesa del thread corrente fino a quando non viene svegliata, in genere <>eseguendo una notifica</em o <em interrotto/>>em>o fino a quando non è trascorsa< una determinata quantità di tempo reale.

(Ereditato da Object)

Eventi

FaceDetection
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

ZoomChange
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

Implementazioni dell'interfaccia esplicita

IJavaPeerable.Disposed()
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

(Ereditato da Object)
IJavaPeerable.DisposeUnlessReferenced()
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

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

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

(Ereditato da Object)
IJavaPeerable.JniManagedPeerState
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

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

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

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

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

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

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

(Ereditato da Object)

Metodi di estensione

JavaCast<TResult>(IJavaObject)
Obsoleti.

Esegue una conversione dei tipi controllati dal runtime Android.

JavaCast<TResult>(IJavaObject)
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

GetJniTypeName(IJavaPeerable)
Obsoleti.

La classe Camera viene usata per impostare le impostazioni di acquisizione delle immagini, l'anteprima di avvio/arresto, l'acquisizione di immagini e il recupero di fotogrammi per la codifica per il video.

Si applica a