Sprache

Camera Klasse

Definition

Achtung

This class is obsoleted in this android platform

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen.

[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
Vererbung
Attribute

Hinweise

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen. Diese Klasse ist ein Client für den Kameradienst, der die tatsächliche Kamerahardware verwaltet.

Um auf die Gerätekamera zuzugreifen, müssen Sie die android.Manifest.permission#CAMERA Berechtigung im Android-Manifest deklarieren. Achten Sie außerdem darauf, das Manifestelement "<uses-feature>" einzuschließen, um kamerafeatures zu deklarieren, die von Ihrer Anwendung verwendet werden. Wenn Sie beispielsweise die Kamera- und Autofokusfunktion verwenden, sollte Ihr Manifest Folgendes enthalten:

&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" />

Führen Sie die folgenden Schritte aus, um Bilder mit dieser Klasse zu erstellen:

<ol><li>Abrufen einer Instanz von Kamera von #open(int).

<li>Abrufen vorhandener (Standard)-Einstellungen mit #getParameters().

<li>ändern Sie bei Bedarf das zurückgegebene Camera.Parameters Objekt und rufen Sie auf #setParameters(Camera.Parameters).

<li>Call #setDisplayOrientation(int) , um die richtige Ausrichtung der Vorschau sicherzustellen.

<li><b>Wichtig</b>: Übergeben Sie einen vollständig initialisiert SurfaceHolder an #setPreviewDisplay(SurfaceHolder). Ohne Oberfläche kann die Kamera die Vorschau nicht starten.

<li><b>Wichtig</b>: Rufen Sie #startPreview() auf, mit der Aktualisierung der Vorschauoberfläche zu beginnen. Die Vorschau muss gestartet werden, bevor Sie ein Bild aufnehmen können.

<li>Wenn Sie möchten, rufen Sie #takePicture(Camera.ShutterCallback, Camera.PictureCallback, Camera.PictureCallback, Camera.PictureCallback) auf, um ein Foto aufzunehmen. Warten Sie, bis die Rückrufe die tatsächlichen Bilddaten bereitstellen.

<li>Nach dem Aufnehmen eines Bilds wurde die Vorschauanzeige beendet. Wenn Sie weitere Fotos aufnehmen möchten, rufen Sie zuerst erneut auf #startPreview() .

<li>Call #stopPreview() to stop updating the preview surface.

<li><b>Wichtig:</b> Anruf #release() , um die Kamera zur Verwendung durch andere Anwendungen freizugeben. Anwendungen sollten die Kamera sofort in android.app.Activity#onPause() die Kamera (und wieder#open() ein) android.app.Activity#onResume()freigeben. </ol>

Führen Sie die folgenden Schritte aus, um schnell in den Videoaufzeichnungsmodus zu wechseln:

<ol><li>Erhalten und initialisieren Sie eine Kamera und starten Sie die Vorschau wie oben beschrieben.

<li>Call #unlock() to allow the media process to access the camera.

<li>Pass the camera to android.media.MediaRecorder#setCamera(Camera). Informationen zur Videoaufzeichnung finden Sie unter .See android.media.MediaRecorder information about video recording.

<li>Wenn die Aufzeichnung abgeschlossen ist, rufen Sie auf #reconnect() , um die Kamera erneut zu erwerben und erneut zu sperren.

<li>Bei Bedarf starten Sie die Vorschau neu, und machen Sie weitere Fotos oder Videos.

<li>Call #stopPreview() und #release() wie oben beschrieben. </ol>

Diese Klasse ist nicht threadsicher und ist für die Verwendung aus einem Ereignisthread vorgesehen. Die meisten lang andauernden Vorgänge (Vorschau, Fokus, Fotoaufnahme usw.) erfolgen asynchron und rufen bei Bedarf Rückrufe auf. Rückrufe werden im Ereignisthread #open(int) aufgerufen. Die Methoden dieser Klasse dürfen niemals aus mehreren Threads gleichzeitig aufgerufen werden.

<starke>Vorsicht:</starke> Unterschiedliche Android-Geräte können unterschiedliche Hardwarespezifikationen aufweisen, z. B. Megapixel-Bewertungen und Autofokus-Funktionen. Damit Ihre Anwendung mit mehr Geräten kompatibel ist, sollten Sie keine Annahmen über die Gerätekameraspezifikationen treffen.

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

Weitere Informationen zur Verwendung von Kameras finden Sie im Handbuch für Kameraentwickler .

</Div>

Dieses Element ist veraltet. Wir empfehlen die Verwendung der neuen android.hardware.camera2 API für neue Anwendungen.

Java Dokumentation für android.hardware.Camera.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Konstruktoren

Name Beschreibung
Camera(IntPtr, JniHandleOwnership)
Veraltet.

Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Laufzeit aufgerufen.

Felder

Name Beschreibung
ActionNewPicture
Veraltet.

Übertragungsaktion: Ein neues Bild wird von der Kamera aufgenommen, und der Eintrag des Bilds wurde dem Medienspeicher hinzugefügt.

ActionNewVideo
Veraltet.

Übertragungsaktion: Ein neues Video wird von der Kamera aufgezeichnet, und der Eintrag des Videos wurde dem Medienspeicher hinzugefügt.

Eigenschaften

Name Beschreibung
Class
Veraltet.

Gibt die Laufzeitklasse dieses Werts Objectzurück.

(Geerbt von Object)
Handle
Veraltet.

Das Handle für die zugrunde liegende Android-Instanz.

(Geerbt von Object)
JniIdentityHashCode
Veraltet.

Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist.

(Geerbt von Object)
JniManagedPeerState
Veraltet.

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen.

(Geerbt von JavaObject)
JniPeerMembers
Veraltet.

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen.

NumberOfCameras
Veraltet.

Gibt die Anzahl der auf diesem Gerät verfügbaren physischen Kameras zurück.

PeerReference
Veraltet.

Ruft den JNI-Objektverweis für diesen Java Peer ab.

(Geerbt von Object)
ThresholdClass
Veraltet.

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

ThresholdType
Veraltet.

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

Methoden

Name Beschreibung
AddCallbackBuffer(Byte[])
Veraltet.

Fügt der Vorschaurückrufpufferwarteschlange einen vorab zugewiesenen Puffer hinzu.

AutoFocus(Camera+IAutoFocusCallback)
Veraltet.

Startet den automatischen Fokus der Kamera und registriert eine Rückruffunktion, die ausgeführt werden soll, wenn die Kamera fokussiert ist.

CancelAutoFocus()
Veraltet.

Bricht alle laufenden Autofokus-Funktionen ab.

Clone()
Veraltet.

Erstellt und gibt eine Kopie dieses Objekts zurück.

(Geerbt von Object)
Construct(JniObjectReference, JniObjectReferenceOptions)
Veraltet.

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen.

(Geerbt von JavaObject)
Dispose()
Veraltet.

Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden.

(Geerbt von Object)
Dispose(Boolean)
Veraltet.

Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden.

(Geerbt von Object)
DisposeUnlessReferenced()
Veraltet.

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen.

(Geerbt von JavaObject)
EnableShutterSound(Boolean)
Veraltet.

Aktivieren oder deaktivieren Sie den Standardauslösersound beim Aufnehmen eines Bilds.

Equals(Object)
Veraltet.

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen.

(Geerbt von JavaObject)
Equals(Object)
Veraltet.

Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist.

(Geerbt von Object)
GetCameraInfo(Int32, Camera+CameraInfo)
Veraltet.

Gibt die Informationen zu einer bestimmten Kamera zurück.

GetHashCode()
Veraltet.

Gibt einen Hashcodewert für das Objekt zurück.

(Geerbt von Object)
GetParameters()
Veraltet.

Gibt die aktuellen Einstellungen für diesen Kameradienst zurück.

JavaFinalize()
Veraltet.

Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind.

(Geerbt von Object)
Lock()
Veraltet.

Sperrt die Kamera erneut, um zu verhindern, dass andere Prozesse darauf zugreifen.

Notify()
Veraltet.

Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet.

(Geerbt von Object)
NotifyAll()
Veraltet.

Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten.

(Geerbt von Object)
Open()
Veraltet.

Erstellt ein neues Camera -Objekt für den Zugriff auf die erste nach hinten gerichtete Kamera auf dem Gerät.

Open(Int32)
Veraltet.

Erstellt ein neues Camera -Objekt für den Zugriff auf eine bestimmte Hardwarekamera.

Reconnect()
Veraltet.

Stellt die Verbindung mit dem Kameradienst wieder her, nachdem ein anderer Prozess ihn verwendet hat.

Release()
Veraltet.

Trennt die Kameraobjektressourcen und gibt sie frei.

SetAutoFocusMoveCallback(Camera+IAutoFocusMoveCallback)
Veraltet.

Legt den Automatischen Fokusrückruf der Kamera fest.

SetDisplayOrientation(Int32)
Veraltet.

Legen Sie die Drehung im Uhrzeigersinn der Vorschauanzeige in Grad fest.

SetErrorCallback(Camera+IErrorCallback)
Veraltet.

Registriert einen Rückruf, der aufgerufen werden soll, wenn ein Fehler auftritt.

SetFaceDetectionListener(Camera+IFaceDetectionListener)
Veraltet.

Registriert einen Listener, um über die im Vorschauframe erkannten Gesichter benachrichtigt zu werden.

SetHandle(IntPtr, JniHandleOwnership)
Veraltet.

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
SetOneShotPreviewCallback(Camera+IPreviewCallback)
Veraltet.

Installiert einen Rückruf, der für den nächsten Vorschauframe aufgerufen wird, zusätzlich zur Anzeige auf dem Bildschirm.

SetParameters(Camera+Parameters)
Veraltet.

Ändert die Einstellungen für diesen Kameradienst.

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)
Veraltet.

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen.

(Geerbt von JavaObject)
SetPreviewCallback(Camera+IPreviewCallback)
Veraltet.

Installiert einen Rückruf, der für jeden Vorschauframe aufgerufen wird, zusätzlich zur Anzeige auf dem Bildschirm.

SetPreviewCallbackWithBuffer(Camera+IPreviewCallback)
Veraltet.

Installiert einen Rückruf, der für jeden Vorschauframe aufgerufen werden soll, indem Puffer verwendet werden, die bereitgestellt #addCallbackBuffer(byte[])werden, zusätzlich zur Anzeige auf dem Bildschirm.

SetPreviewDisplay(ISurfaceHolder)
Veraltet.

Legt den Wert fest, der für die Surface Livevorschau verwendet werden soll.

SetPreviewTexture(SurfaceTexture)
Veraltet.

Legt den Wert fest, der für die SurfaceTexture Livevorschau verwendet werden soll.

SetZoomChangeListener(Camera+IOnZoomChangeListener)
Veraltet.

Registriert einen Listener, der benachrichtigt wird, wenn der Zoomwert vom Kameratreiber während des reibungslosen Zooms aktualisiert wird.

StartFaceDetection()
Veraltet.

Startet die Gesichtserkennung.

StartPreview()
Veraltet.

Beginnt mit dem Erfassen und Zeichnen von Vorschauframes auf dem Bildschirm.

StartSmoothZoom(Int32)
Veraltet.

Vergrößert den angeforderten Wert reibungslos.

StopFaceDetection()
Veraltet.

Stoppt die Gesichtserkennung.

StopPreview()
Veraltet.

Beendet das Erfassen und Zeichnen von Vorschauframes auf der Oberfläche und setzt die Kamera für einen zukünftigen Aufruf zurück #startPreview().

StopSmoothZoom()
Veraltet.

Stoppt den glatten Zoom.

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

Entspricht

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

Nimmt ein Bild auf. Anzeigevorschau wird nach der Aufnahme angehalten; Rufen Sie an StartPreview() , bevor Sie ein anderes Bild aufnehmen.

ToArray<T>()
Veraltet.

Erstellt ein verwaltetes Array aus diesem Java Arraywrapper.

(Geerbt von Object)
ToString()
Veraltet.

Gibt eine Zeichenfolgendarstellung des Objekts zurück.

(Geerbt von Object)
Unlock()
Veraltet.

Entsperrt die Kamera, damit ein anderer Prozess darauf zugreifen kann.

UnregisterFromRuntime()
Veraltet.

Hebt die Registrierung dieses Java Peers aus der Interop-Laufzeit auf.

(Geerbt von Object)
Wait()
Veraltet.

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em< oder >em<unterbrochen>/em<.><>

(Geerbt von Object)
Wait(Int64, Int32)
Veraltet.

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Wait(Int64)
Veraltet.

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)

Ereignisse

Name Beschreibung
FaceDetection
Veraltet.

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen.

ZoomChange
Veraltet.

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen.

Explizite Schnittstellenimplementierungen

Name Beschreibung
IJavaPeerable.Disposed()
Veraltet.

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen.

(Geerbt von JavaObject)
IJavaPeerable.Finalized()
Veraltet.

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen.

(Geerbt von JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock
Veraltet.

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen.

(Geerbt von JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)
Veraltet.

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen.

(Geerbt von JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)
Veraltet.

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen.

(Geerbt von JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)
Veraltet.

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen.

(Geerbt von JavaObject)

Erweiterungsmethoden

Name Beschreibung
GetJniTypeName(IJavaPeerable)
Veraltet.

Ruft den JNI-Namen des Typs der Instanz selfab.

JavaAs<TResult>(IJavaPeerable)
Veraltet.

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

JavaCast<TResult>(IJavaObject)
Veraltet.

Führt eine android-laufzeitgecheckte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)
Veraltet.

Die Camera-Klasse wird verwendet, um Einstellungen für die Bildaufnahme, Start-/Stoppvorschau, Einrasten von Bildern und Abrufen von Frames für die Codierung für Video festzulegen.

TryJavaCast<TResult>(IJavaPeerable, TResult)
Veraltet.

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

Gilt für: