final class android.nfc.cardemulation.HostApduService$MsgHandler extends android.os.Handler
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: android.nfc.cardemulation.HostApduService$MsgHandler
super_class: android.os.Handler
{
final android.nfc.cardemulation.HostApduService this$0;
descriptor: Landroid/nfc/cardemulation/HostApduService;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(android.nfc.cardemulation.HostApduService);
descriptor: (Landroid/nfc/cardemulation/HostApduService;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // android.nfc.cardemulation.HostApduService$MsgHandler this
0: .line 245
aload 0 /* this */
aload 1
putfield android.nfc.cardemulation.HostApduService$MsgHandler.this$0:Landroid/nfc/cardemulation/HostApduService;
aload 0 /* this */
invokespecial android.os.Handler.<init>:()V
return
end local 0 // android.nfc.cardemulation.HostApduService$MsgHandler this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/nfc/cardemulation/HostApduService$MsgHandler;
MethodParameters:
Name Flags
this$0 final
public void handleMessage(android.os.Message);
descriptor: (Landroid/os/Message;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=2
start local 0 // android.nfc.cardemulation.HostApduService$MsgHandler this
start local 1 // android.os.Message msg
0: .line 248
aload 1 /* msg */
getfield android.os.Message.what:I
tableswitch { // 0 - 3
0: 1
1: 24
2: 33
3: 36
default: 45
}
1: .line 250
StackMap locals:
StackMap stack:
aload 1 /* msg */
invokevirtual android.os.Message.getData:()Landroid/os/Bundle;
astore 2 /* dataBundle */
start local 2 // android.os.Bundle dataBundle
2: .line 251
aload 2 /* dataBundle */
ifnonnull 4
3: .line 252
return
4: .line 254
StackMap locals: android.os.Bundle
StackMap stack:
aload 0 /* this */
getfield android.nfc.cardemulation.HostApduService$MsgHandler.this$0:Landroid/nfc/cardemulation/HostApduService;
getfield android.nfc.cardemulation.HostApduService.mNfcService:Landroid/os/Messenger;
ifnonnull 5
aload 0 /* this */
getfield android.nfc.cardemulation.HostApduService$MsgHandler.this$0:Landroid/nfc/cardemulation/HostApduService;
aload 1 /* msg */
getfield android.os.Message.replyTo:Landroid/os/Messenger;
putfield android.nfc.cardemulation.HostApduService.mNfcService:Landroid/os/Messenger;
5: .line 256
StackMap locals:
StackMap stack:
aload 2 /* dataBundle */
ldc "data"
invokevirtual android.os.Bundle.getByteArray:(Ljava/lang/String;)[B
astore 3 /* apdu */
start local 3 // byte[] apdu
6: .line 257
aload 3 /* apdu */
ifnull 22
7: .line 258
aload 0 /* this */
getfield android.nfc.cardemulation.HostApduService$MsgHandler.this$0:Landroid/nfc/cardemulation/HostApduService;
aload 3 /* apdu */
aconst_null
invokevirtual android.nfc.cardemulation.HostApduService.processCommandApdu:([BLandroid/os/Bundle;)[B
astore 4 /* responseApdu */
start local 4 // byte[] responseApdu
8: .line 259
aload 4 /* responseApdu */
ifnull 46
9: .line 260
aload 0 /* this */
getfield android.nfc.cardemulation.HostApduService$MsgHandler.this$0:Landroid/nfc/cardemulation/HostApduService;
getfield android.nfc.cardemulation.HostApduService.mNfcService:Landroid/os/Messenger;
ifnonnull 12
10: .line 261
ldc "ApduService"
ldc "Response not sent; service was deactivated."
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
11: .line 262
return
12: .line 264
StackMap locals: byte[] byte[]
StackMap stack:
aconst_null
iconst_1
invokestatic android.os.Message.obtain:(Landroid/os/Handler;I)Landroid/os/Message;
astore 5 /* responseMsg */
start local 5 // android.os.Message responseMsg
13: .line 265
new android.os.Bundle
dup
invokespecial android.os.Bundle.<init>:()V
astore 6 /* responseBundle */
start local 6 // android.os.Bundle responseBundle
14: .line 266
aload 6 /* responseBundle */
ldc "data"
aload 4 /* responseApdu */
invokevirtual android.os.Bundle.putByteArray:(Ljava/lang/String;[B)V
15: .line 267
aload 5 /* responseMsg */
aload 6 /* responseBundle */
invokevirtual android.os.Message.setData:(Landroid/os/Bundle;)V
16: .line 268
aload 5 /* responseMsg */
aload 0 /* this */
getfield android.nfc.cardemulation.HostApduService$MsgHandler.this$0:Landroid/nfc/cardemulation/HostApduService;
getfield android.nfc.cardemulation.HostApduService.mMessenger:Landroid/os/Messenger;
putfield android.os.Message.replyTo:Landroid/os/Messenger;
17: .line 270
aload 0 /* this */
getfield android.nfc.cardemulation.HostApduService$MsgHandler.this$0:Landroid/nfc/cardemulation/HostApduService;
getfield android.nfc.cardemulation.HostApduService.mNfcService:Landroid/os/Messenger;
aload 5 /* responseMsg */
invokevirtual android.os.Messenger.send:(Landroid/os/Message;)V
18: .line 271
goto 46
StackMap locals: android.nfc.cardemulation.HostApduService$MsgHandler android.os.Message android.os.Bundle byte[] byte[] android.os.Message android.os.Bundle
StackMap stack: android.os.RemoteException
19: pop
20: .line 272
ldc "TAG"
ldc "Response not sent; RemoteException calling into NfcService."
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
end local 6 // android.os.Bundle responseBundle
end local 5 // android.os.Message responseMsg
end local 4 // byte[] responseApdu
21: .line 276
goto 46
22: .line 277
StackMap locals:
StackMap stack:
ldc "ApduService"
ldc "Received MSG_COMMAND_APDU without data."
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
23: .line 279
goto 46
end local 3 // byte[] apdu
end local 2 // android.os.Bundle dataBundle
24: .line 281
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.nfc.cardemulation.HostApduService$MsgHandler.this$0:Landroid/nfc/cardemulation/HostApduService;
getfield android.nfc.cardemulation.HostApduService.mNfcService:Landroid/os/Messenger;
ifnonnull 27
25: .line 282
ldc "ApduService"
ldc "Response not sent; service was deactivated."
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
26: .line 283
return
27: .line 286
StackMap locals:
StackMap stack:
aload 1 /* msg */
aload 0 /* this */
getfield android.nfc.cardemulation.HostApduService$MsgHandler.this$0:Landroid/nfc/cardemulation/HostApduService;
getfield android.nfc.cardemulation.HostApduService.mMessenger:Landroid/os/Messenger;
putfield android.os.Message.replyTo:Landroid/os/Messenger;
28: .line 287
aload 0 /* this */
getfield android.nfc.cardemulation.HostApduService$MsgHandler.this$0:Landroid/nfc/cardemulation/HostApduService;
getfield android.nfc.cardemulation.HostApduService.mNfcService:Landroid/os/Messenger;
aload 1 /* msg */
invokevirtual android.os.Messenger.send:(Landroid/os/Message;)V
29: .line 288
goto 46
StackMap locals:
StackMap stack: android.os.RemoteException
30: pop
31: .line 289
ldc "ApduService"
ldc "RemoteException calling into NfcService."
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
32: .line 291
goto 46
33: .line 294
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.nfc.cardemulation.HostApduService$MsgHandler.this$0:Landroid/nfc/cardemulation/HostApduService;
aconst_null
putfield android.nfc.cardemulation.HostApduService.mNfcService:Landroid/os/Messenger;
34: .line 295
aload 0 /* this */
getfield android.nfc.cardemulation.HostApduService$MsgHandler.this$0:Landroid/nfc/cardemulation/HostApduService;
aload 1 /* msg */
getfield android.os.Message.arg1:I
invokevirtual android.nfc.cardemulation.HostApduService.onDeactivated:(I)V
35: .line 296
goto 46
36: .line 298
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.nfc.cardemulation.HostApduService$MsgHandler.this$0:Landroid/nfc/cardemulation/HostApduService;
getfield android.nfc.cardemulation.HostApduService.mNfcService:Landroid/os/Messenger;
ifnonnull 39
37: .line 299
ldc "ApduService"
ldc "notifyUnhandled not sent; service was deactivated."
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
38: .line 300
return
39: .line 303
StackMap locals:
StackMap stack:
aload 1 /* msg */
aload 0 /* this */
getfield android.nfc.cardemulation.HostApduService$MsgHandler.this$0:Landroid/nfc/cardemulation/HostApduService;
getfield android.nfc.cardemulation.HostApduService.mMessenger:Landroid/os/Messenger;
putfield android.os.Message.replyTo:Landroid/os/Messenger;
40: .line 304
aload 0 /* this */
getfield android.nfc.cardemulation.HostApduService$MsgHandler.this$0:Landroid/nfc/cardemulation/HostApduService;
getfield android.nfc.cardemulation.HostApduService.mNfcService:Landroid/os/Messenger;
aload 1 /* msg */
invokevirtual android.os.Messenger.send:(Landroid/os/Message;)V
41: .line 305
goto 46
StackMap locals:
StackMap stack: android.os.RemoteException
42: pop
43: .line 306
ldc "ApduService"
ldc "RemoteException calling into NfcService."
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
44: .line 308
goto 46
45: .line 310
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* msg */
invokespecial android.os.Handler.handleMessage:(Landroid/os/Message;)V
46: .line 312
StackMap locals:
StackMap stack:
return
end local 1 // android.os.Message msg
end local 0 // android.nfc.cardemulation.HostApduService$MsgHandler this
LocalVariableTable:
Start End Slot Name Signature
0 47 0 this Landroid/nfc/cardemulation/HostApduService$MsgHandler;
0 47 1 msg Landroid/os/Message;
2 24 2 dataBundle Landroid/os/Bundle;
6 24 3 apdu [B
8 21 4 responseApdu [B
13 21 5 responseMsg Landroid/os/Message;
14 21 6 responseBundle Landroid/os/Bundle;
Exception table:
from to target type
17 18 19 Class android.os.RemoteException
27 29 30 Class android.os.RemoteException
39 41 42 Class android.os.RemoteException
MethodParameters:
Name Flags
msg
}
SourceFile: "HostApduService.java"
NestHost: android.nfc.cardemulation.HostApduService
InnerClasses:
final MsgHandler = android.nfc.cardemulation.HostApduService$MsgHandler of android.nfc.cardemulation.HostApduService