Поделиться через


IBinder.Transact(Int32, Parcel, Parcel, TransactionFlags) Метод

Определение

Выполните универсальную операцию с объектом.

[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

Параметры

code
Int32

Действие для выполнения. Это должно быть число между #FIRST_CALL_TRANSACTION и #LAST_CALL_TRANSACTION.

data
Parcel

Маршаллированные данные для отправки в целевой объект. Не должен принимать значение null. Если вы не отправляете данные, необходимо создать пустую посылку, указанную здесь.

reply
Parcel

Маршаллированные данные, полученные от целевого объекта. Может иметь значение NULL, если вы не заинтересованы в возвращаемом значении.

flags
TransactionFlags

Дополнительные флаги операций. Либо 0 для обычной RPC, либо #FLAG_ONEWAY для односторонняя RPC.

Возвращаемое значение

Возвращает результат из Binder#onTransact. Успешный вызов обычно возвращает значение true; False обычно означает, что код транзакции не был понят. Для вызова oneway к другому процессу false никогда не следует возвращать. Если вызов oneway выполняется для кода в одном процессе (обычно в реализацию C++ или Rust), то нет семантики oneway, и значение false по-прежнему может быть возвращено.

Атрибуты

Исключения

Комментарии

Выполните универсальную операцию с объектом.

Документация по Java для android.os.IBinder.transact(int, android.os.Parcel, android.os.Parcel, int).

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Применяется к