CameraManager.AvailabilityCallback.OnPhysicalCameraAvailable 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
實體相機已可供再次使用。
[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
叫用。
如果 android.content.pm.ApplicationInfo#targetSdkVersion targetSdkVersion
為 < android.os.Build.VERSION_CODES#UPSIDE_DOWN_CAKE
,開啟邏輯相機會停用其實體相機的 #onPhysicalCameraAvailable
和 #onPhysicalCameraUnavailable
回呼。 例如,如果應用程式 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>實體相機狀態變更會在邏輯相機變成無法使用之後觸發或#onPhysicalCameraUnavailable
甚至會觸發#onPhysicalCameraAvailable
。 #onCameraUnavailable
邏輯相機的呼叫不會重設實體相機的可用性狀態。 這可讓應用程式開啟邏輯相機裝置,知道哪些實體相機無法使用或可供使用。</李>
<li>類似於 android.os.Build.VERSION_CODES#TIRAMISU Android 13
和更早版本,邏輯相機的 #onCameraAvailable
回呼表示其所有實體相機的狀態都可供使用。 #onPhysicalCameraUnavailable
將會在邏輯相機變成可用時,針對任何無法使用的實體相機呼叫。</李>
</ul>
假設相機透過 android.hardware.camera2.CaptureRequest
擷取的管線本質,如果應用程式向邏輯多相機的實體相機要求影像,且實體相機變成無法使用,則可能會有畫面下降。 應用程式應該在收到后立即停止直接從無法使用的實體相機 #onPhysicalCameraUnavailable
要求,並且也準備好針對以實體相機為目標的要求,強固地處理畫面捨棄錯誤,因為這些錯誤可能會在無法使用回呼之前到達。
此方法的預設實作不會執行任何動作。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。