다음을 통해 공유


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호출될 수 있습니다.

android.os.Build.VERSION_CODES#UPSIDE_DOWN_CAKE면 논리 카메라를 열면 android.content.pm.ApplicationInfo#targetSdkVersion targetSdkVersion 물리적 카메라에 대한 콜백 및 #onPhysicalCameraUnavailable 콜백이 비활성화 #onPhysicalCameraAvailable 됩니다. 예를 들어 앱 A가 카메라 디바이스를 여는 경우:

<ul>

<li>ActivityCallback get #onCameraUnavailable을 구독하는 모든 앱.</리>

<li>No 앱(앱 A 포함)은 ActivityCallback #onPhysicalCameraAvailable 을 구독하거나 #onPhysicalCameraUnavailable논리 카메라를 사용할 수 없기 때문에(일부 앱에서 사용 중임) 가져옵니다.</리>

</ul>

If android.content.pm.ApplicationInfo#targetSdkVersion targetSdkVersionandroid.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.hardware.camera2.CameraManager.AvailabilityCallback.onPhysicalCameraAvailable(java.lang.String, java.lang.String)Java 설명서

이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.

적용 대상