Binder.Transact(Int32, Parcel, Parcel, TransactionFlags) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
La implementación predeterminada rebobina las parcelas y llama a onTransact.
[Android.Runtime.Register("transact", "(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z", "")]
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", "")>]
abstract member Transact : int * Android.OS.Parcel * Android.OS.Parcel * Android.OS.TransactionFlags -> bool
override this.Transact : int * Android.OS.Parcel * Android.OS.Parcel * Android.OS.TransactionFlags -> bool
Parámetros
- code
- Int32
La acción a realizar. Debe ser un número entre FirstCallTransaction y LastCallTransaction.
- data
- Parcel
Datos serializado que se van a enviar al destino. No debe ser null. Si no envía ningún dato, debe crear un paquete vacío que se proporciona aquí.
- reply
- Parcel
Datos serializado que se van a recibir del destino. Puede ser null si no está interesado en el valor devuelto.
- flags
- TransactionFlags
Marcas de operación adicionales. 0 para un RPC normal o FlagOneway para un RPC unidireccional.
Devoluciones
Devuelve el resultado de Binder.onTransact . Una llamada correcta generalmente devuelve true; false generalmente significa que no se entendió el código de transacción. Para una llamada oneway a otro proceso false nunca se debe devolver. Si se realiza una llamada oneway al código en el mismo proceso (normalmente a una implementación de C++ o Rust), no hay una semántica de una sola vía y todavía se puede devolver false.
Implementaciones
- Atributos
Excepciones
Comentarios
La implementación predeterminada rebobina las parcelas y llama a onTransact. En el lado remoto, realiza llamadas de transacción al enlazador para realizar el IPC.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.