CameraManager.AvailabilityCallback.OnPhysicalCameraAvailable Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Eine physische Kamera ist wieder verfügbar.
[Android.Runtime.Register("onPhysicalCameraAvailable", "(Ljava/lang/String;Ljava/lang/String;)V", "GetOnPhysicalCameraAvailable_Ljava_lang_String_Ljava_lang_String_Handler", ApiSince=30)]
public virtual void OnPhysicalCameraAvailable (string cameraId, string physicalCameraId);
[<Android.Runtime.Register("onPhysicalCameraAvailable", "(Ljava/lang/String;Ljava/lang/String;)V", "GetOnPhysicalCameraAvailable_Ljava_lang_String_Ljava_lang_String_Handler", ApiSince=30)>]
abstract member OnPhysicalCameraAvailable : string * string -> unit
override this.OnPhysicalCameraAvailable : string * string -> unit
Parameter
- cameraId
- String
Der eindeutige Bezeichner der logischen Multikamera.
- physicalCameraId
- String
Der eindeutige Bezeichner der physischen Kamera.
- Attribute
Hinweise
Eine physische Kamera ist wieder verfügbar.
Standardmäßig sind alle physischen Kameras einer logischen Multikamera verfügbar, daher #onPhysicalCameraAvailable
wird nicht für eine der physischen Kameras einer logischen Multikamera aufgerufen, wenn #onCameraAvailable
für die logische Multikamera aufgerufen wird. Wenn jedoch einige bestimmte physische Kameras nicht verfügbar sind, um mit ihnen zu beginnen, #onPhysicalCameraUnavailable
kann nach #onCameraAvailable
dem Aufruf aufgerufen werden.
Wenn android.content.pm.ApplicationInfo#targetSdkVersion targetSdkVersion
< android.os.Build.VERSION_CODES#UPSIDE_DOWN_CAKE
, deaktiviert das Öffnen einer logischen Kamera die #onPhysicalCameraAvailable
und #onPhysicalCameraUnavailable
Rückrufe für seine physischen Kameras. Beispiel: Wenn app A das Kameragerät öffnet:
<ul>
<li>Alle Apps, die ActivityCallback abonnieren.#onCameraUnavailable
</Li>
<li>Keine App (einschließlich App A), die ActivityCallback abonniert, ruft #onPhysicalCameraAvailable
ab oder #onPhysicalCameraUnavailable
, da die logische Kamera nicht verfügbar ist (einige App verwendet sie).</Li>
</ul>
Wenn android.content.pm.ApplicationInfo#targetSdkVersion targetSdkVersion
≥ android.os.Build.VERSION_CODES#UPSIDE_DOWN_CAKE
:
<ul>
<li>Eine Änderung des physischen Kamerastatus wird ausgelöst #onPhysicalCameraAvailable
oder #onPhysicalCameraUnavailable
sogar, nachdem die logische Kamera nicht verfügbar ist. Ein #onCameraUnavailable
Aufruf einer logischen Kamera setzt den Verfügbarkeitsstatus der physischen Kameras nicht zurück. Dadurch ist es möglich, dass eine Anwendung das logische Kameragerät öffnet, um zu wissen, welche physische Kamera nicht verfügbar oder verfügbar ist.</Li>
<li>ähnlich android.os.Build.VERSION_CODES#TIRAMISU Android 13
und früher bedeutet der Rückruf der logischen Kamera #onCameraAvailable
, dass alle physischen Kameras verfügbar sind. #onPhysicalCameraUnavailable
wird aufgerufen, dass alle nicht verfügbaren physischen Kameras aufgerufen werden, sobald die logische Kamera verfügbar wird.</Li>
</ul>
Angesichts der Pipeline-Art der Kameraaufnahme android.hardware.camera2.CaptureRequest
durch , kann es Frame-Tropfen geben, wenn die Anwendung Bilder von einer physischen Kamera einer logischen Multikamera anfordert und diese physische Kamera nicht verfügbar wird. Die Anwendung sollte nicht mehr direkt von einer nicht verfügbaren physischen Kamera anfordern, sobald #onPhysicalCameraUnavailable
sie empfangen wird, und auch bereit sein, Frame-Drop-Fehler für Anforderungen, die auf physische Kameras abzielen, zu behandeln, da diese Fehler vor dem Nichtverfügbarkeitsrückruf auftreten können.
Die Standardimplementierung dieser Methode führt nichts aus.
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.