final class android.os.BinderProxy implements android.os.IBinder
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: android.os.BinderProxy
super_class: java.lang.Object
{
volatile boolean mWarnOnBlocking;
descriptor: Z
flags: (0x0040) ACC_VOLATILE
private static android.os.BinderProxy$ProxyMap sProxyMap;
descriptor: Landroid/os/BinderProxy$ProxyMap;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static final int NATIVE_ALLOCATION_SIZE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1000
private final long mNativeData;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new android.os.BinderProxy$ProxyMap
dup
invokespecial android.os.BinderProxy$ProxyMap.<init>:()V
putstatic android.os.BinderProxy.sProxyMap:Landroid/os/BinderProxy$ProxyMap;
1: return
LocalVariableTable:
Start End Slot Name Signature
private static void dumpProxyDebugInfo();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic android.os.Build.IS_DEBUGGABLE:Z
ifeq 2
1: getstatic android.os.BinderProxy.sProxyMap:Landroid/os/BinderProxy$ProxyMap;
invokevirtual android.os.BinderProxy$ProxyMap.dumpProxyInterfaceCounts:()V
2: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
private static android.os.BinderProxy getInstance(long, long);
descriptor: (JJ)Landroid/os/BinderProxy;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=2
0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tNativeAllocationRegistry cannot be resolved\n\tNativeAllocationRegistry cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
LocalVariableTable:
Start End Slot Name Signature
MethodParameters:
Name Flags
nativeData
iBinder
private void <init>(long);
descriptor: (J)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
getstatic android.os.Binder.sWarnOnBlocking:Z
putfield android.os.BinderProxy.mWarnOnBlocking:Z
2: aload 0
lload 1
putfield android.os.BinderProxy.mNativeData:J
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/os/BinderProxy;
0 4 1 nativeData J
MethodParameters:
Name Flags
nativeData
public native boolean pingBinder();
descriptor: ()Z
flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
public native boolean isBinderAlive();
descriptor: ()Z
flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
public android.os.IInterface queryLocalInterface(java.lang.String);
descriptor: (Ljava/lang/String;)Landroid/os/IInterface;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/os/BinderProxy;
0 1 1 descriptor Ljava/lang/String;
MethodParameters:
Name Flags
descriptor
public boolean transact(int, android.os.Parcel, android.os.Parcel, int);
descriptor: (ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iload 1
aload 2
ldc "Unreasonably large binder buffer"
invokestatic android.os.Binder.checkParcel:(Landroid/os/IBinder;ILandroid/os/Parcel;Ljava/lang/String;)V
1: aload 0
getfield android.os.BinderProxy.mWarnOnBlocking:Z
ifeq 6
iload 4
iconst_1
iand
ifne 6
2: aload 0
iconst_0
putfield android.os.BinderProxy.mWarnOnBlocking:Z
3: ldc "Binder"
ldc "Outgoing transactions from this process must be FLAG_ONEWAY"
4: new java.lang.Throwable
dup
invokespecial java.lang.Throwable.<init>:()V
5: invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
6: StackMap locals:
StackMap stack:
invokestatic android.os.Binder.isTracingEnabled:()Z
istore 5
start local 5 7: iload 5
ifeq 14
8: new java.lang.Throwable
dup
invokespecial java.lang.Throwable.<init>:()V
astore 6
start local 6 9: invokestatic android.os.Binder.getTransactionTracker:()Landroid/os/TransactionTracker;
aload 6
invokevirtual android.os.TransactionTracker.addTrace:(Ljava/lang/Throwable;)V
10: aload 6
invokevirtual java.lang.Throwable.getStackTrace:()[Ljava/lang/StackTraceElement;
iconst_1
aaload
astore 7
start local 7 11: lconst_1
12: new java.lang.StringBuilder
dup
aload 7
invokevirtual java.lang.StackTraceElement.getClassName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 7
invokevirtual java.lang.StackTraceElement.getMethodName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
13: invokestatic android.os.Trace.traceBegin:(JLjava/lang/String;)V
end local 7 end local 6 14: StackMap locals: int
StackMap stack:
aload 0
iload 1
aload 2
aload 3
iload 4
invokevirtual android.os.BinderProxy.transactNative:(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
istore 7
15: iload 5
ifeq 17
16: lconst_1
invokestatic android.os.Trace.traceEnd:(J)V
17: StackMap locals: android.os.BinderProxy int android.os.Parcel android.os.Parcel int int top int
StackMap stack:
iload 7
ireturn
18: StackMap locals: android.os.BinderProxy int android.os.Parcel android.os.Parcel int int
StackMap stack: java.lang.Throwable
astore 6
19: iload 5
ifeq 21
20: lconst_1
invokestatic android.os.Trace.traceEnd:(J)V
21: StackMap locals: java.lang.Throwable
StackMap stack:
aload 6
athrow
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Landroid/os/BinderProxy;
0 22 1 code I
0 22 2 data Landroid/os/Parcel;
0 22 3 reply Landroid/os/Parcel;
0 22 4 flags I
7 22 5 tracingEnabled Z
9 14 6 tr Ljava/lang/Throwable;
11 14 7 stackTraceElement Ljava/lang/StackTraceElement;
Exception table:
from to target type
14 15 18 any
Exceptions:
throws android.os.RemoteException
MethodParameters:
Name Flags
code
data
reply
flags
private static native long getNativeFinalizer();
descriptor: ()J
flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
public native java.lang.String getInterfaceDescriptor();
descriptor: ()Ljava/lang/String;
flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
Exceptions:
throws android.os.RemoteException
public native boolean transactNative(int, android.os.Parcel, android.os.Parcel, int);
descriptor: (ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
Exceptions:
throws android.os.RemoteException
MethodParameters:
Name Flags
code
data
reply
flags
public native void linkToDeath(android.os.IBinder$DeathRecipient, int);
descriptor: (Landroid/os/IBinder$DeathRecipient;I)V
flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
Exceptions:
throws android.os.RemoteException
MethodParameters:
Name Flags
recipient
flags
public native boolean unlinkToDeath(android.os.IBinder$DeathRecipient, int);
descriptor: (Landroid/os/IBinder$DeathRecipient;I)Z
flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
MethodParameters:
Name Flags
recipient
flags
public void dump(java.io.FileDescriptor, java.lang.String[]);
descriptor: (Ljava/io/FileDescriptor;[Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: invokestatic android.os.Parcel.obtain:()Landroid/os/Parcel;
astore 3
start local 3 1: invokestatic android.os.Parcel.obtain:()Landroid/os/Parcel;
astore 4
start local 4 2: aload 3
aload 1
invokevirtual android.os.Parcel.writeFileDescriptor:(Ljava/io/FileDescriptor;)V
3: aload 3
aload 2
invokevirtual android.os.Parcel.writeStringArray:([Ljava/lang/String;)V
4: aload 0
ldc 1598311760
aload 3
aload 4
iconst_0
invokevirtual android.os.BinderProxy.transact:(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
pop
5: aload 4
invokevirtual android.os.Parcel.readException:()V
6: goto 11
StackMap locals: android.os.BinderProxy java.io.FileDescriptor java.lang.String[] android.os.Parcel android.os.Parcel
StackMap stack: java.lang.Throwable
7: astore 5
8: aload 3
invokevirtual android.os.Parcel.recycle:()V
9: aload 4
invokevirtual android.os.Parcel.recycle:()V
10: aload 5
athrow
11: StackMap locals:
StackMap stack:
aload 3
invokevirtual android.os.Parcel.recycle:()V
12: aload 4
invokevirtual android.os.Parcel.recycle:()V
13: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Landroid/os/BinderProxy;
0 14 1 fd Ljava/io/FileDescriptor;
0 14 2 args [Ljava/lang/String;
1 14 3 data Landroid/os/Parcel;
2 14 4 reply Landroid/os/Parcel;
Exception table:
from to target type
4 7 7 any
Exceptions:
throws android.os.RemoteException
MethodParameters:
Name Flags
fd
args
public void dumpAsync(java.io.FileDescriptor, java.lang.String[]);
descriptor: (Ljava/io/FileDescriptor;[Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: invokestatic android.os.Parcel.obtain:()Landroid/os/Parcel;
astore 3
start local 3 1: invokestatic android.os.Parcel.obtain:()Landroid/os/Parcel;
astore 4
start local 4 2: aload 3
aload 1
invokevirtual android.os.Parcel.writeFileDescriptor:(Ljava/io/FileDescriptor;)V
3: aload 3
aload 2
invokevirtual android.os.Parcel.writeStringArray:([Ljava/lang/String;)V
4: aload 0
ldc 1598311760
aload 3
aload 4
iconst_1
invokevirtual android.os.BinderProxy.transact:(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
pop
5: goto 10
StackMap locals: android.os.BinderProxy java.io.FileDescriptor java.lang.String[] android.os.Parcel android.os.Parcel
StackMap stack: java.lang.Throwable
6: astore 5
7: aload 3
invokevirtual android.os.Parcel.recycle:()V
8: aload 4
invokevirtual android.os.Parcel.recycle:()V
9: aload 5
athrow
10: StackMap locals:
StackMap stack:
aload 3
invokevirtual android.os.Parcel.recycle:()V
11: aload 4
invokevirtual android.os.Parcel.recycle:()V
12: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Landroid/os/BinderProxy;
0 13 1 fd Ljava/io/FileDescriptor;
0 13 2 args [Ljava/lang/String;
1 13 3 data Landroid/os/Parcel;
2 13 4 reply Landroid/os/Parcel;
Exception table:
from to target type
4 6 6 any
Exceptions:
throws android.os.RemoteException
MethodParameters:
Name Flags
fd
args
public void shellCommand(java.io.FileDescriptor, java.io.FileDescriptor, java.io.FileDescriptor, java.lang.String[], android.os.ShellCallback, android.os.ResultReceiver);
descriptor: (Ljava/io/FileDescriptor;Ljava/io/FileDescriptor;Ljava/io/FileDescriptor;[Ljava/lang/String;Landroid/os/ShellCallback;Landroid/os/ResultReceiver;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: invokestatic android.os.Parcel.obtain:()Landroid/os/Parcel;
astore 7
start local 7 1: invokestatic android.os.Parcel.obtain:()Landroid/os/Parcel;
astore 8
start local 8 2: aload 7
aload 1
invokevirtual android.os.Parcel.writeFileDescriptor:(Ljava/io/FileDescriptor;)V
3: aload 7
aload 2
invokevirtual android.os.Parcel.writeFileDescriptor:(Ljava/io/FileDescriptor;)V
4: aload 7
aload 3
invokevirtual android.os.Parcel.writeFileDescriptor:(Ljava/io/FileDescriptor;)V
5: aload 7
aload 4
invokevirtual android.os.Parcel.writeStringArray:([Ljava/lang/String;)V
6: aload 5
aload 7
invokestatic android.os.ShellCallback.writeToParcel:(Landroid/os/ShellCallback;Landroid/os/Parcel;)V
7: aload 6
aload 7
iconst_0
invokevirtual android.os.ResultReceiver.writeToParcel:(Landroid/os/Parcel;I)V
8: aload 0
ldc 1598246212
aload 7
aload 8
iconst_0
invokevirtual android.os.BinderProxy.transact:(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
pop
9: aload 8
invokevirtual android.os.Parcel.readException:()V
10: goto 15
StackMap locals: android.os.BinderProxy java.io.FileDescriptor java.io.FileDescriptor java.io.FileDescriptor java.lang.String[] android.os.ShellCallback android.os.ResultReceiver android.os.Parcel android.os.Parcel
StackMap stack: java.lang.Throwable
11: astore 9
12: aload 7
invokevirtual android.os.Parcel.recycle:()V
13: aload 8
invokevirtual android.os.Parcel.recycle:()V
14: aload 9
athrow
15: StackMap locals:
StackMap stack:
aload 7
invokevirtual android.os.Parcel.recycle:()V
16: aload 8
invokevirtual android.os.Parcel.recycle:()V
17: return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Landroid/os/BinderProxy;
0 18 1 in Ljava/io/FileDescriptor;
0 18 2 out Ljava/io/FileDescriptor;
0 18 3 err Ljava/io/FileDescriptor;
0 18 4 args [Ljava/lang/String;
0 18 5 callback Landroid/os/ShellCallback;
0 18 6 resultReceiver Landroid/os/ResultReceiver;
1 18 7 data Landroid/os/Parcel;
2 18 8 reply Landroid/os/Parcel;
Exception table:
from to target type
8 11 11 any
Exceptions:
throws android.os.RemoteException
MethodParameters:
Name Flags
in
out
err
args
callback
resultReceiver
private static final void sendDeathNotice(android.os.IBinder$DeathRecipient);
descriptor: (Landroid/os/IBinder$DeathRecipient;)V
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokeinterface android.os.IBinder$DeathRecipient.binderDied:()V
1: goto 6
2: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 1
start local 1 3: ldc "BinderNative"
ldc "Uncaught exception from death notification"
4: aload 1
5: invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
end local 1 6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 recipient Landroid/os/IBinder$DeathRecipient;
3 6 1 exc Ljava/lang/RuntimeException;
Exception table:
from to target type
0 1 2 Class java.lang.RuntimeException
MethodParameters:
Name Flags
recipient
}
SourceFile: "Binder.java"
NestMembers:
android.os.BinderProxy$NoImagePreloadHolder android.os.BinderProxy$ProxyMap
InnerClasses:
private NoImagePreloadHolder = android.os.BinderProxy$NoImagePreloadHolder of android.os.BinderProxy
private final ProxyMap = android.os.BinderProxy$ProxyMap of android.os.BinderProxy
public abstract DeathRecipient = android.os.IBinder$DeathRecipient of android.os.IBinder