共用方式為


CameraCaptureSession.Close 方法

定義

以異步方式關閉此擷取工作階段。

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

實作

屬性

備註

以異步方式關閉此擷取工作階段。

關閉工作階段會釋出工作階段的目標輸出 Surface,以便與新的工作階段一起重複使用,或是可繪製至 Surface 的其他 API。

請注意,針對建立新會話或關閉相機裝置等常見使用案例,直接呼叫個別 API 的速度會更快(如需詳細資訊,請參閱下文),而不需呼叫此方法。 只有當應用程式想要取消設定相機,但讓裝置保持開啟以供稍後使用時,此 API 才很有用。

使用 CameraDevice#createCaptureSession 建立新的擷取會話會自動關閉任何現有的擷取會話,並呼叫較舊的會話接聽程式的 StateCallback#onClosed 回呼。 直接使用 CameraDevice#createCaptureSession 而不關閉是快速切換至新會話的建議方法,因為可以更有效率地重複使用未變更的目標輸出。

您也可以直接關閉裝置 CameraDevice#close 而不呼叫此 API,以便快速關閉相機。

會話關閉之後,其上的所有方法都會擲回 IllegalStateException,並停止任何重複的要求或高載(如同 #stopRepeating() 呼叫一樣)。 不過,提交至會話的任何進行中擷取要求都會如常完成;一旦所有擷取都已完成且會話已損毀, StateCallback#onClosed 就會呼叫 。

關閉會話是等冪的;關閉一次以上沒有任何作用。

android.hardware.camera2.CameraCaptureSession.close()Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於