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_TRANSACTIONsein.

data
Parcel

Gemarshallte 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

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

flags
TransactionFlags

Zusätzliche Vorgangsflags. Entweder 0 für einen normalen RPC oder #FLAG_ONEWAY für einen unidirektionalen RPC.

Gibt zurück

Gibt das Ergebnis von zurück Binder#onTransact. Ein erfolgreicher Aufruf gibt im Allgemeinen true zurück. false bedeutet im Allgemeinen, dass der Transaktionscode nicht verstanden wurde. Für einen oneway-Aufruf eines anderen Prozesses sollte niemals false zurückgegeben werden. Wenn ein oneway-Aufruf für Code im selben Prozess erfolgt (in der Regel für eine C++- oder Rust-Implementierung), gibt es keine oneway-Semantik, 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, die auf Arbeiten basieren, die vom Android Open Source Project erstellt und freigegeben wurden und gemäß den In Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: