Idioma

MediaProjection.CreateVirtualDisplay Método

Definição

Cria um VirtualDisplay para capturar o conteúdo da tela.

[Android.Runtime.Register("createVirtualDisplay", "(Ljava/lang/String;IIIILandroid/view/Surface;Landroid/hardware/display/VirtualDisplay$Callback;Landroid/os/Handler;)Landroid/hardware/display/VirtualDisplay;", "")]
public Android.Hardware.Display.VirtualDisplay? CreateVirtualDisplay(string name, int width, int height, int dpi, Android.Views.DisplayFlags flags, Android.Views.Surface? surface, Android.Hardware.Display.VirtualDisplay.Callback? callback, Android.OS.Handler? handler);
[<Android.Runtime.Register("createVirtualDisplay", "(Ljava/lang/String;IIIILandroid/view/Surface;Landroid/hardware/display/VirtualDisplay$Callback;Landroid/os/Handler;)Landroid/hardware/display/VirtualDisplay;", "")>]
member this.CreateVirtualDisplay : string * int * int * int * Android.Views.DisplayFlags * Android.Views.Surface * Android.Hardware.Display.VirtualDisplay.Callback * Android.OS.Handler -> Android.Hardware.Display.VirtualDisplay

Parâmetros

name
String

O nome da exibição virtual deve não estar vazio.

width
Int32

A largura da exibição virtual em pixels. Deve ser maior que 0.

height
Int32

A altura da exibição virtual em pixels. Deve ser maior que 0.

dpi
Int32

A densidade da exibição virtual no dpi. Deve ser maior que 0.

flags
DisplayFlags

Uma combinação de sinalizadores de exibição virtuais. Confira DisplayManager a lista completa de sinalizadores.

surface
Surface

A superfície na qual o conteúdo da exibição virtual deve ser renderizado ou nulo se não houver nenhuma inicialmente.

callback
VirtualDisplay.Callback

Retorno de chamada para chamar quando o estado da exibição virtual for alterado ou nulo se nenhum.

handler
Handler

O Handler retorno de chamada no qual o retorno de chamada deve ser invocado ou nulo se o retorno de chamada deve ser invocado na principal Looperdo thread de chamada.

Retornos

A exibição virtual criada ou null se nenhuma exibição virtual puder ser criada.

Atributos

Exceções

Para aplicativos direcionados ao Android 14 (nível de API 34) ou posterior, se não houver MediaProjection.Callback registro.

Se a projeção tiver sido interrompida; ou, para aplicativos direcionados ao Android 14 (nível de API 34) ou posterior, se o OnStop() retorno de chamada tiver sido recebido, se essa projeção já tiver iniciado uma gravação ou se ela tiver sido obtida invocando GetMediaProjection(Int32, Intent) mais de uma vez para o mesmo resultado de consentimento.

Comentários

Registre um MediaProjection.Callback antes de chamar esse método. Substitua OnStop() para liberar a exibição virtual, a superfície e os recursos relacionados e atualizar qualquer interface do usuário que represente o estado de projeção.

Para aplicativos direcionados ao Android 14 (nível de API 34) ou posterior, cada sessão de consentimento do usuário concede uma chamada a esse método. Não reutilize os dados de resultado passados para GetMediaProjection(Int32, Intent) obter várias instâncias de projeção e não chame esse método mais de uma vez na mesma instância de projeção.

Depois Stop() de chamada, essa projeção não pode mais criar uma exibição virtual. Para aplicativos direcionados ao Android 14 (nível de API 34) ou posterior, a mesma restrição se aplica após OnStop() o recebimento. Para aplicativos direcionados a uma versão anterior, o usuário pode ser solicitado a conceder consentimento novamente em vez de uma exceção ser lançada.

Java documentação para android.media.projection.MediaProjection.createVirtualDisplay(java.lang.String, int, int, int, int, android.view.Surface, android.hardware.display.VirtualDisplay.Callback, android.os.Handler).

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.

Aplica-se a

Confira também