Langue

IBinder.Transact(Int32, Parcel, Parcel, TransactionFlags) Méthode

Définition

Effectuez une opération générique avec l’objet.

[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

Paramètres

code
Int32

L’action à accomplir. Il doit s’agir d’un nombre compris entre #FIRST_CALL_TRANSACTION et #LAST_CALL_TRANSACTION.

data
Parcel

Données marshalées à envoyer à la cible. Ne doit pas être null. Si vous n’envoyez aucune donnée, vous devez créer un colis vide qui est fourni ici.

reply
Parcel

Données marshalées à recevoir de la cible. Peut être null si vous n’êtes pas intéressé par la valeur de retour.

flags
TransactionFlags

Indicateurs d’opération supplémentaires. Soit 0 pour un RPC normal, soit #FLAG_ONEWAY pour un RPC unidirectionnel.

Retours

Retourne le résultat de Binder#onTransact. Un appel réussi retourne généralement true ; false signifie généralement que le code de transaction n’a pas été compris. Pour un appel uniway à un autre processus false ne doit jamais être retourné. Si un appel oneway est effectué vers du code dans le même processus (généralement vers une implémentation C++ ou Rust), il n’existe aucune sémantique oneway, et false peut toujours être retourné.

Attributs

Exceptions

Remarques

Effectuez une opération générique avec l’objet.

Java documentation pour android.os.IBinder.transact(int, android.os.Parcel, android.os.Parcel, int).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.

S’applique à