CameraCaptureSession.Close メソッド

定義

このキャプチャ セッションを非同期で閉じます。

[Android.Runtime.Register("close", "()V", "GetCloseHandler")]
public abstract void Close ();
[<Android.Runtime.Register("close", "()V", "GetCloseHandler")>]
abstract member Close : unit -> unit

実装

属性

注釈

このキャプチャ セッションを非同期で閉じます。

セッションを閉じると、セッションのターゲット出力サーフェスが解放され、新しいセッションまたはサーフェスに描画できる他の API で再利用できます。

新しいセッションを作成したり、カメラ デバイスを閉じたりするなどの一般的な使用シナリオでは、このメソッドを呼び出さずに、それぞれの API を直接呼び出す方が高速であることに注意してください (詳細については、以下を参照してください)。 この API は、アプリケーションがカメラの構成を解除し、後で使用するためにデバイスを開いたままにしたい場合にのみ役立ちます。

を使用して新しいキャプチャ セッション CameraDevice#createCaptureSession を作成すると、既存のキャプチャ セッションが自動的に閉じられ、古いセッション リスナーの StateCallback#onClosed コールバックが呼び出されます。 未変更のターゲット出力をより効率的に再利用できるため、新しいセッションにすばやく切り替えるためには、閉じずに直接を使用 CameraDevice#createCaptureSession することをお勧めします。

この API を呼び出さずにデバイスを CameraDevice#close 直接閉じることも、カメラをすばやく閉じるために推奨されます。

セッションが閉じられると、そのセッションのすべてのメソッドが IllegalStateException をスローし、繰り返し要求またはバーストが (呼び出されたかのように #stopRepeating() ) 停止します。 ただし、セッションに送信された進行中のキャプチャ要求は通常どおりに完了します。すべてのキャプチャが完了し、セッションが破棄されると、 StateCallback#onClosed が呼び出されます。

セッションのクローズはべき等です。を複数回閉じると効果がありません。

android.hardware.camera2.CameraCaptureSession.close()Java ドキュメント。

このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。

適用対象