UsbDeviceConnection.BulkTransferAsync Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überlädt
| Name | Beschreibung |
|---|---|
| BulkTransferAsync(UsbEndpoint, Byte[], Int32, Int32) |
Führt eine Massenübertragung auf dem angegebenen Endpunkt in einer Aufgabe aus. |
| BulkTransferAsync(UsbEndpoint, Byte[], Int32, Int32, Int32) |
Führt eine Massenübertragung aus dem angegebenen Pufferoffset in einem Vorgang aus. |
BulkTransferAsync(UsbEndpoint, Byte[], Int32, Int32)
Führt eine Massenübertragung auf dem angegebenen Endpunkt in einer Aufgabe aus.
public System.Threading.Tasks.Task<int> BulkTransferAsync(Android.Hardware.Usb.UsbEndpoint? endpoint, byte[]? buffer, int length, int timeout);
member this.BulkTransferAsync : Android.Hardware.Usb.UsbEndpoint * byte[] * int * int -> System.Threading.Tasks.Task<int>
Parameter
- endpoint
- UsbEndpoint
Der Endpunkt, der die Übertragungsrichtung bestimmt.
- buffer
- Byte[]
Der Puffer für daten, die gesendet oder empfangen werden sollen, beginnend mit Index 0. Wenn null, length muss null sein.
- length
- Int32
Die Anzahl der zu sendenden oder empfangenden Bytes. Darf nicht und nicht größer als die Pufferlänge sein. Weitere Informationen finden Sie in den Hinweisen zum Kompatibilitätslimit von 16384 Byte.
- timeout
- Int32
Das Übertragungstimeout in Millisekunden; Null wartet auf unbestimmte Zeit.
Gibt zurück
Ein Vorgang, dessen Ergebnis die Anzahl der übertragenen Bytes, einschließlich Null, bei Erfolg oder ein negativer Wert für Fehler, ist.
Hinweise
Diese .NET Methode verwendetRun<TResult>(Func<TResult>), um aufzurufenBulkTransfer(UsbEndpoint, Byte[], Int32, Int32). Lassen Sie die Verbindung geöffnet, und lesen oder ändern Sie den Puffer erst, wenn die Aufgabe abgeschlossen ist.
Vor Android 9 (API-Ebene 28) werden Übertragungslängen von mehr als 16384 Bytes auf 16384 reduziert. Unter Android 9 und höher gilt dieser Grenzwert weiterhin für Anwendungen, die auf eine API-Ebene unter 28 abzielen. Puffergrenzen werden vor dieser Reduzierung überprüft.
Implementierungsquellen: .NET Taskwrapper-Generator und Android-USB-Verbindungsimplementierung.
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:
BulkTransferAsync(UsbEndpoint, Byte[], Int32, Int32, Int32)
Führt eine Massenübertragung aus dem angegebenen Pufferoffset in einem Vorgang aus.
public System.Threading.Tasks.Task<int> BulkTransferAsync(Android.Hardware.Usb.UsbEndpoint? endpoint, byte[]? buffer, int offset, int length, int timeout);
member this.BulkTransferAsync : Android.Hardware.Usb.UsbEndpoint * byte[] * int * int * int -> System.Threading.Tasks.Task<int>
Parameter
- endpoint
- UsbEndpoint
Der Endpunkt, der die Übertragungsrichtung bestimmt.
- buffer
- Byte[]
Der Puffer für zu sendende oder empfangende Daten. Wenn null, offset und length muss beide null sein.
- offset
- Int32
Der nicht-negative Index des ersten Byte, in bufferdas gesendet oder empfangen werden soll.
- length
- Int32
Die Anzahl der zu sendenden oder empfangenden Bytes. Muss nicht negativ sein, und der Bereich, der beginnt, offset muss in den Puffer passen. Weitere Informationen finden Sie in den Hinweisen zum Kompatibilitätslimit von 16384 Byte.
- timeout
- Int32
Das Übertragungstimeout in Millisekunden; Null wartet auf unbestimmte Zeit.
Gibt zurück
Ein Vorgang, dessen Ergebnis die Anzahl der übertragenen Bytes, einschließlich Null, bei Erfolg oder ein negativer Wert für Fehler, ist.
Hinweise
Diese .NET Methode verwendetRun<TResult>(Func<TResult>), um aufzurufenBulkTransfer(UsbEndpoint, Byte[], Int32, Int32, Int32). Lassen Sie die Verbindung geöffnet, und lesen oder ändern Sie den Puffer erst, wenn die Aufgabe abgeschlossen ist.
Vor Android 9 (API-Ebene 28) werden Übertragungslängen von mehr als 16384 Bytes auf 16384 reduziert. Unter Android 9 und höher gilt dieser Grenzwert weiterhin für Anwendungen, die auf eine API-Ebene unter 28 abzielen. Puffergrenzen werden vor dieser Reduzierung überprüft.
Implementierungsquellen: .NET Taskwrapper-Generator und Android-USB-Verbindungsimplementierung.
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.