Freigeben über


IBinder.Transact(Int32, Parcel, Parcel, TransactionFlags) Methode

Definition

Führen Sie einen generischen Vorgang mit dem Objekt aus.

[Android.Runtime.Register("transact", "(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z", "GetTransact_ILandroid_os_Parcel_Landroid_os_Parcel_IHandler:Android.OS.IBinderInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public bool Transact (int code, Android.OS.Parcel data, Android.OS.Parcel? reply, Android.OS.TransactionFlags flags);
[<Android.Runtime.Register("transact", "(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z", "GetTransact_ILandroid_os_Parcel_Landroid_os_Parcel_IHandler:Android.OS.IBinderInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member Transact : int * Android.OS.Parcel * Android.OS.Parcel * Android.OS.TransactionFlags -> bool

Parameter

code
Int32

Die auszuführende Aktion. Dies sollte eine Zahl zwischen #FIRST_CALL_TRANSACTION und #LAST_CALL_TRANSACTION.

data
Parcel

Ge marshallte Daten, die an das Ziel gesendet werden sollen. Darf nicht NULL sein. Wenn Sie keine Daten senden, müssen Sie ein leeres Paket erstellen, das hier angegeben wird.

reply
Parcel

Ge marshallte Daten, die vom Ziel empfangen werden sollen. Kann null sein, wenn Sie nicht an dem Rückgabewert interessiert sind.

flags
TransactionFlags

Zusätzliche Vorgangskennzeichnungen. Entweder 0 für einen normalen RPC oder #FLAG_ONEWAY für ein unidirektionales RPC.

Gibt zurück

Gibt das Ergebnis von Binder#onTransact. Ein erfolgreicher Aufruf gibt in der Regel "true" zurück; "false" bedeutet im Allgemeinen, dass der Transaktionscode nicht verstanden wurde. Bei einem Oneway-Aufruf an einen anderen Prozess "false" sollte niemals zurückgegeben werden. Wenn ein Oneway-Aufruf zum Code im selben Prozess (in der Regel in einer C++- oder Rust-Implementierung) erfolgt, gibt es keine Onewaysemantik, und "false" kann weiterhin zurückgegeben werden.

Attribute

Ausnahmen

Hinweise

Führen Sie einen generischen Vorgang mit dem Objekt aus.

Java-Dokumentation für android.os.IBinder.transact(int, android.os.Parcel, android.os.Parcel, int).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: