다음을 통해 공유


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

추가 작업 플래그입니다. 일반 RPC 또는 #FLAG_ONEWAY 단방향 RPC의 경우 0입니다.

반환

에서 결과를 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 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.

적용 대상