共用方式為


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

要執行的動作。 這應該是和#LAST_CALL_TRANSACTION之間的#FIRST_CALL_TRANSACTION數位。

data
Parcel

要傳送至目標的封送數據。 不得為 null。 如果您未傳送任何數據,您必須建立此處提供的空白地塊。

reply
Parcel

要從目標接收的封送處理數據。 如果您對傳回值不感興趣,可能是 null。

flags
TransactionFlags

其他作業旗標。 一般 RPC 的 0 或 #FLAG_ONEWAY 單向 RPC。

傳回

Binder#onTransact傳回結果。 成功的呼叫通常會傳回 true;false 通常表示無法理解交易程序代碼。 對於不同進程的單向呼叫,不應該傳回 false。 如果在相同進程中對程式代碼進行單向呼叫(通常是C++或 Rust 實作),則沒有任何語意,而且仍然可以傳回 false。

屬性

例外狀況

備註

使用物件執行泛型作業。

android.os.IBinder.transact(int, android.os.Parcel, android.os.Parcel, int)Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於