Langue

CameraManager.AvailabilityCallback.OnPhysicalCameraAvailable Méthode

Définition

Une caméra physique est devenue disponible à nouveau pour une utilisation.

[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

Paramètres

cameraId
String

Identificateur unique de la caméra multi-caméra logique.

physicalCameraId
String

Identificateur unique de la caméra physique.

Attributs

Remarques

Une caméra physique est devenue disponible à nouveau pour une utilisation.

Par défaut, toutes les caméras physiques d’une caméra multi-caméra logique sont disponibles. Il n’est donc #onPhysicalCameraAvailable pas appelé pour l’une des caméras physiques d’une caméra multi-caméra logique, quand #onCameraAvailable la caméra multi-caméra logique est appelée. Toutefois, si certaines caméras physiques spécifiques ne sont pas disponibles pour commencer, #onPhysicalCameraUnavailable peuvent être appelées après #onCameraAvailable.

Si < , l’ouverture d’une caméra logique désactive et rappelle ses caméras physiques. Par exemple, si l’application A ouvre l’appareil photo :

<ul>

<li>Toutes les applications s’abonnent à ActivityCallback get #onCameraUnavailable.</li>

<li>Aucune application (y compris l’application A) s’abonnant à ActivityCallback obtient #onPhysicalCameraAvailable ou #onPhysicalCameraUnavailable, car la caméra logique n’est pas disponible (une application l’utilise).</li>

</ul>

If android.content.pm.ApplicationInfo#targetSdkVersion targetSdkVersion &ge ; android.os.Build.VERSION_CODES#UPSIDE_DOWN_CAKE:

<ul>

<Li>Un changement d’état de caméra physique se déclenche #onPhysicalCameraAvailable ou #onPhysicalCameraUnavailable même après que la caméra logique ne soit plus disponible. Un #onCameraUnavailable appel pour une caméra logique ne réinitialise pas l’état de disponibilité des caméras physiques. Cela permet à une application d’ouvrir l’appareil photo logique pour savoir quelle caméra physique devient indisponible ou disponible à utiliser.</li>

<Li>Similaire à android.os.Build.VERSION_CODES#TIRAMISU Android 13 et antérieur, le rappel de #onCameraAvailable la caméra logique implique que l’état de toutes ses caméras physiques deviennent disponibles. #onPhysicalCameraUnavailable sera appelé pour toutes les caméras physiques indisponibles lors de la mise à disposition de la caméra logique.</li>

</ul>

Étant donné la nature du pipeline de la capture android.hardware.camera2.CaptureRequestde caméra, il peut y avoir des chutes d’images si l’application demande des images d’une caméra physique d’une caméra multi-caméra logique et que la caméra physique devient indisponible. L’application doit cesser de demander directement à partir d’une caméra physique indisponible dès qu’elle #onPhysicalCameraUnavailable est reçue, et être également prête à gérer de manière robuste les erreurs de suppression d’images pour les requêtes ciblant les caméras physiques, car ces erreurs peuvent arriver avant le rappel d’indisponibilité.

L’implémentation par défaut de cette méthode ne fait rien.

Java documentation pour android.hardware.camera2.CameraManager.AvailabilityCallback.onPhysicalCameraAvailable(java.lang.String, java.lang.String).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.

S’applique à