CameraManager.AvailabilityCallback.OnPhysicalCameraAvailable Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Uma câmera física ficou disponível para uso novamente.
[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
Parâmetros
- cameraId
- String
O identificador exclusivo da várias câmeras lógicas.
- physicalCameraId
- String
O identificador exclusivo da câmera física.
- Atributos
Comentários
Uma câmera física ficou disponível para uso novamente.
Por padrão, todas as câmeras físicas de uma câmera múltipla lógica estão disponíveis, portanto #onPhysicalCameraAvailable , não são chamadas para nenhuma das câmeras físicas de uma câmera múltipla lógica, quando #onCameraAvailable para a câmera múltipla lógica é invocada. No entanto, se algumas câmeras físicas específicas não estiverem disponíveis para começar, #onPhysicalCameraUnavailable poderão ser invocadas após #onCameraAvailable.
Se
<ul>
<li>Todos os aplicativos que assinam activityCallback get #onCameraUnavailable.</li>
<li>Nenhum aplicativo (incluindo o aplicativo A) que assina ActivityCallback obtém #onPhysicalCameraAvailable ou #onPhysicalCameraUnavailableporque a câmera lógica não está disponível (algum aplicativo está usando-o).</li>
</ul>
Se android.content.pm.ApplicationInfo#targetSdkVersion targetSdkVersion > android.os.Build.VERSION_CODES#UPSIDE_DOWN_CAKE:
<ul>
<li>Uma alteração de status da câmera física será disparada #onPhysicalCameraAvailable ou #onPhysicalCameraUnavailable mesmo depois que a câmera lógica ficar indisponível. Uma #onCameraUnavailable chamada para uma câmera lógica não redefine o status de disponibilidade das câmeras físicas. Isso possibilita que um aplicativo que abre o dispositivo de câmera lógica saiba qual câmera física fica indisponível ou disponível para uso.</li>
<li>Semelhante e android.os.Build.VERSION_CODES#TIRAMISU Android 13 anterior, o retorno de chamada da #onCameraAvailable câmera lógica implica que todo o status de suas câmeras físicas fique disponível.
#onPhysicalCameraUnavailable serão chamadas para quaisquer câmeras físicas indisponíveis após a câmera lógica ficar disponível.</li>
</ul>
Dada a natureza do pipeline da captura android.hardware.camera2.CaptureRequestda câmera, pode haver quedas de quadro se o aplicativo solicitar imagens de uma câmera física de uma câmera múltipla lógica e essa câmera física ficar indisponível. O aplicativo deve parar de solicitar diretamente de uma câmera física indisponível assim #onPhysicalCameraUnavailable que for recebido e também estar pronto para lidar robustamente com erros de queda de quadro para solicitações direcionadas a câmeras físicas, já que esses erros podem chegar antes do retorno de chamada indisponibilidade.
A implementação padrão desse método não faz nada.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.