Sprache

MediaProjection.CreateVirtualDisplay Methode

Definition

Erstellt einen VirtualDisplay , um den Inhalt des Bildschirms zu erfassen.

[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

Parameter

name
String

Der Name der virtuellen Anzeige muss nicht leer sein.

width
Int32

Die Breite der virtuellen Anzeige in Pixeln. Muss größer als 0 sein.

height
Int32

Die Höhe der virtuellen Anzeige in Pixeln. Muss größer als 0 sein.

dpi
Int32

Die Dichte der virtuellen Anzeige in dpi. Muss größer als 0 sein.

flags
DisplayFlags

Eine Kombination aus virtuellen Anzeigekennzeichnungen. Die vollständige Liste der Flags finden Sie DisplayManager unter.

surface
Surface

Die Oberfläche, auf der der Inhalt der virtuellen Anzeige gerendert werden soll, oder null, wenn es anfänglich keines gibt.

callback
VirtualDisplay.Callback

Rückruf zum Aufrufen, wenn sich der Zustand der virtuellen Anzeige ändert, oder null, wenn keines vorhanden ist.

handler
Handler

Der Handler Rückruf, für den der Rückruf aufgerufen werden soll, oder NULL, wenn der Rückruf im Hauptthread Looperaufgerufen werden soll.

Gibt zurück

Die erstellte virtuelle Anzeige oder null wenn keine virtuelle Anzeige erstellt werden konnte.

Attribute

Ausnahmen

Für Anwendungen für Android 14 (API-Ebene 34) oder höher, wenn keine MediaProjection.Callback registriert ist.

Wenn die Projektion beendet wurde; oder für Anwendungen, die auf Android 14 (API-Ebene 34) oder höher ausgerichtet sind, wenn ihr OnStop() Rückruf empfangen wurde, wenn diese Projektion bereits eine Aufzeichnung gestartet hat oder wenn sie mehr GetMediaProjection(Int32, Intent) als einmal für dasselbe Zustimmungsergebnis aufgerufen wurde.

Hinweise

Registrieren Sie eine MediaProjection.Callback Vor dem Aufrufen dieser Methode. Überschreiben OnStop() , um die virtuelle Anzeige, Oberfläche und zugehörige Ressourcen freizugeben und alle Ui-Elemente zu aktualisieren, die den Projektionszustand darstellen.

Für Anwendungen für Android 14 (API-Ebene 34) oder höher gewährt jede Benutzerzustimmungssitzung einen Aufruf dieser Methode. Verwenden Sie die ergebnisdaten, die übergeben werden, um mehrere Projektionsinstanzen abzurufen GetMediaProjection(Int32, Intent) , und rufen Sie diese Methode nicht mehr als einmal in derselben Projektionsinstanz auf.

Nach Stop() dem Aufruf kann diese Projektion keine virtuelle Anzeige mehr erstellen. Für Anwendungen für Android 14 (API-Ebene 34) oder höher gilt die gleiche Einschränkung, nachdem OnStop() sie empfangen wurde. Für Anwendungen, die auf eine frühere Version abzielen, kann der Benutzer aufgefordert werden, die Zustimmung erneut zu erteilen, anstatt eine Ausnahme auszulösen.

Java Dokumentation für android.media.projection.MediaProjection.createVirtualDisplay(java.lang.String, int, int, int, int, android.view.Surface, android.hardware.display.VirtualDisplay.Callback, android.os.Handler).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für:

Siehe auch