CameraCaptureSession.Close Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Cierre esta sesión de captura de forma asincrónica.
[Android.Runtime.Register("close", "()V", "GetCloseHandler")]
public abstract void Close ();
[<Android.Runtime.Register("close", "()V", "GetCloseHandler")>]
abstract member Close : unit -> unit
Implementaciones
- Atributos
Comentarios
Cierre esta sesión de captura de forma asincrónica.
Al cerrar una sesión, se liberan las superficies de salida de destino de la sesión para su reutilización con una nueva sesión o con otras API que se pueden dibujar en Surfaces.
Tenga en cuenta que para escenarios de uso comunes, como crear una nueva sesión o cerrar el dispositivo de cámara, es más rápido llamar directamente a las API respectivas (consulte a continuación para obtener más detalles) sin llamar a este método. Esta API solo es útil cuando la aplicación quiere desconfigurar la cámara, pero mantener el dispositivo abierto para su uso posterior.
La creación de una nueva sesión de captura con CameraDevice#createCaptureSession
cerrará automáticamente cualquier sesión de captura existente y llamará a la devolución de llamada del agente de escucha de StateCallback#onClosed
sesión anterior. El uso CameraDevice#createCaptureSession
directo sin cerrar es el enfoque recomendado para cambiar rápidamente a una nueva sesión, ya que las salidas de destino sin cambios se pueden reutilizar de forma más eficaz.
También se recomienda cerrar el dispositivo directamente CameraDevice#close
sin llamar a esta API para cerrar rápidamente la cámara.
Una vez cerrada una sesión, todos los métodos en él producirán una excepción IllegalStateException y se detienen todas las solicitudes o ráfagas repetidas (como si #stopRepeating()
se llamara a ). Sin embargo, las solicitudes de captura en curso enviadas a la sesión se completarán como normales; Una vez que se hayan completado todas las capturas y se haya eliminado la sesión, StateCallback#onClosed
se llamará a .
Cerrar una sesión es idempotente; cerrar más de una vez no tiene ningún efecto.
Documentación de Java para android.hardware.camera2.CameraCaptureSession.close()
.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.