語言

CameraManager.AvailabilityCallback.OnPhysicalCameraAvailable 方法

定義

實體攝影機也重新開放使用。

[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

參數

cameraId
String

邏輯多攝影機的唯一識別碼。

physicalCameraId
String

實體攝影機的唯一識別碼。

屬性

備註

實體攝影機也重新開放使用。

預設情況下,邏輯多鏡頭的所有實體攝影機皆可用,因此 #onPhysicalCameraAvailable 當 #onCameraAvailable 邏輯多鏡頭呼叫時,不會呼叫邏輯多鏡頭的任何實體攝影機。 然而,如果某些特定的實體攝影機一開始無法使用, #onPhysicalCameraUnavailable 則可在 之後被 #onCameraAvailable調用。

若 < ,開啟邏輯攝影機會禁用 及其實體攝影機的回調。 例如,如果應用程式A開啟相機裝置:

<UL>

<li>所有訂閱 ActivityCallback 的應用程式都獲得 #onCameraUnavailable。</李>

<li>沒有應用程式(包括應用程式 A)訂閱 ActivityCallback 會收到 #onPhysicalCameraAvailable 或 #onPhysicalCameraUnavailable,因為邏輯攝影機無法使用(有應用程式正在使用)。</李>

</ul>

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

<UL>

<li>物理攝影機狀態變更會觸發 #onPhysicalCameraAvailable ,甚至 #onPhysicalCameraUnavailable 在邏輯攝影機無法使用後。 #onCameraUnavailable呼叫邏輯攝影機並不會重置實體攝影機的可用性狀態。 這使得應用程式開啟邏輯攝影機裝置時,能知道哪台實體攝影機變得無法使用或可用。</李>

<li>與先前類似 android.os.Build.VERSION_CODES#TIRAMISU Android 13 ,邏輯攝影機 #onCameraAvailable 的回調意味著所有實體攝影機的狀態都會被公開。 #onPhysicalCameraUnavailable 當邏輯攝影機啟用時,將呼叫任何無法使用的實體攝影機。</李>

</ul>

由於攝影機擷取的管線特性 android.hardware.camera2.CaptureRequest,若應用程式向邏輯多攝影機的實體攝影機請求影像,而該實體攝影機無法使用,可能會發生影格掉落。 應用程式應在收到無法使用的實體攝影機 #onPhysicalCameraUnavailable 後立即停止直接請求,並準備好對針對實體攝影機的請求進行穩健處理掉幀錯誤,因為這些錯誤可能在無法回撥之前就已發生。

此方法的預設實作不會執行任何動作。

Java 文件 android.hardware.camera2.CameraManager.AvailabilityCallback.onPhysicalCameraAvailable(java.lang.String, java.lang.String)。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於