public final class android.nfc.tech.Ndef extends android.nfc.tech.BasicTagTechnology
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: android.nfc.tech.Ndef
super_class: android.nfc.tech.BasicTagTechnology
{
private static final java.lang.String TAG;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "NFC"
public static final int NDEF_MODE_READ_ONLY;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int NDEF_MODE_READ_WRITE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int NDEF_MODE_UNKNOWN;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 3
public static final java.lang.String EXTRA_NDEF_MSG;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "ndefmsg"
public static final java.lang.String EXTRA_NDEF_MAXLENGTH;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "ndefmaxlength"
public static final java.lang.String EXTRA_NDEF_CARDSTATE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "ndefcardstate"
public static final java.lang.String EXTRA_NDEF_TYPE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "ndeftype"
public static final int TYPE_OTHER;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -1
public static final int TYPE_1;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int TYPE_2;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int TYPE_3;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 3
public static final int TYPE_4;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 4
public static final int TYPE_MIFARE_CLASSIC;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 101
public static final int TYPE_ICODE_SLI;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 102
public static final java.lang.String UNKNOWN;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "android.ndef.unknown"
public static final java.lang.String NFC_FORUM_TYPE_1;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "org.nfcforum.ndef.type1"
public static final java.lang.String NFC_FORUM_TYPE_2;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "org.nfcforum.ndef.type2"
public static final java.lang.String NFC_FORUM_TYPE_3;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "org.nfcforum.ndef.type3"
public static final java.lang.String NFC_FORUM_TYPE_4;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "org.nfcforum.ndef.type4"
public static final java.lang.String MIFARE_CLASSIC;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "com.nxp.ndef.mifareclassic"
public static final java.lang.String ICODE_SLI;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "com.nxp.ndef.icodesli"
private final int mMaxNdefSize;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int mCardState;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final android.nfc.NdefMessage mNdefMsg;
descriptor: Landroid/nfc/NdefMessage;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int mNdefType;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public static android.nfc.tech.Ndef get(android.nfc.Tag);
descriptor: (Landroid/nfc/Tag;)Landroid/nfc/tech/Ndef;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
bipush 6
invokevirtual android.nfc.Tag.hasTech:(I)Z
ifne 1
aconst_null
areturn
1: StackMap locals:
StackMap stack:
new android.nfc.tech.Ndef
dup
aload 0
invokespecial android.nfc.tech.Ndef.<init>:(Landroid/nfc/Tag;)V
2: areturn
3: StackMap locals:
StackMap stack: android.os.RemoteException
pop
4: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 tag Landroid/nfc/Tag;
Exception table:
from to target type
1 2 3 Class android.os.RemoteException
MethodParameters:
Name Flags
tag
public void <init>(android.nfc.Tag);
descriptor: (Landroid/nfc/Tag;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
bipush 6
invokespecial android.nfc.tech.BasicTagTechnology.<init>:(Landroid/nfc/Tag;I)V
1: aload 1
bipush 6
invokevirtual android.nfc.Tag.getTechExtras:(I)Landroid/os/Bundle;
astore 2
start local 2 2: aload 2
ifnull 8
3: aload 0
aload 2
ldc "ndefmaxlength"
invokevirtual android.os.Bundle.getInt:(Ljava/lang/String;)I
putfield android.nfc.tech.Ndef.mMaxNdefSize:I
4: aload 0
aload 2
ldc "ndefcardstate"
invokevirtual android.os.Bundle.getInt:(Ljava/lang/String;)I
putfield android.nfc.tech.Ndef.mCardState:I
5: aload 0
aload 2
ldc "ndefmsg"
invokevirtual android.os.Bundle.getParcelable:(Ljava/lang/String;)Landroid/os/Parcelable;
checkcast android.nfc.NdefMessage
putfield android.nfc.tech.Ndef.mNdefMsg:Landroid/nfc/NdefMessage;
6: aload 0
aload 2
ldc "ndeftype"
invokevirtual android.os.Bundle.getInt:(Ljava/lang/String;)I
putfield android.nfc.tech.Ndef.mNdefType:I
7: goto 9
8: StackMap locals: android.nfc.tech.Ndef android.nfc.Tag android.os.Bundle
StackMap stack:
new java.lang.NullPointerException
dup
ldc "NDEF tech extras are null."
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Landroid/nfc/tech/Ndef;
0 10 1 tag Landroid/nfc/Tag;
2 10 2 extras Landroid/os/Bundle;
Exceptions:
throws android.os.RemoteException
MethodParameters:
Name Flags
tag
public android.nfc.NdefMessage getCachedNdefMessage();
descriptor: ()Landroid/nfc/NdefMessage;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.nfc.tech.Ndef.mNdefMsg:Landroid/nfc/NdefMessage;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/nfc/tech/Ndef;
public java.lang.String getType();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.nfc.tech.Ndef.mNdefType:I
lookupswitch { // 6
1: 1
2: 2
3: 3
4: 4
101: 5
102: 6
default: 7
}
1: StackMap locals:
StackMap stack:
ldc "org.nfcforum.ndef.type1"
areturn
2: StackMap locals:
StackMap stack:
ldc "org.nfcforum.ndef.type2"
areturn
3: StackMap locals:
StackMap stack:
ldc "org.nfcforum.ndef.type3"
areturn
4: StackMap locals:
StackMap stack:
ldc "org.nfcforum.ndef.type4"
areturn
5: StackMap locals:
StackMap stack:
ldc "com.nxp.ndef.mifareclassic"
areturn
6: StackMap locals:
StackMap stack:
ldc "com.nxp.ndef.icodesli"
areturn
7: StackMap locals:
StackMap stack:
ldc "android.ndef.unknown"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Landroid/nfc/tech/Ndef;
public int getMaxSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.nfc.tech.Ndef.mMaxNdefSize:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/nfc/tech/Ndef;
public boolean isWritable();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield android.nfc.tech.Ndef.mCardState:I
iconst_2
if_icmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/nfc/tech/Ndef;
public android.nfc.NdefMessage getNdefMessage();
descriptor: ()Landroid/nfc/NdefMessage;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual android.nfc.tech.Ndef.checkConnected:()V
1: aload 0
getfield android.nfc.tech.Ndef.mTag:Landroid/nfc/Tag;
invokevirtual android.nfc.Tag.getTagService:()Landroid/nfc/INfcTag;
astore 1
start local 1 2: aload 1
ifnonnull 4
3: new java.io.IOException
dup
ldc "Mock tags don't support this operation."
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: android.nfc.INfcTag
StackMap stack:
aload 0
getfield android.nfc.tech.Ndef.mTag:Landroid/nfc/Tag;
invokevirtual android.nfc.Tag.getServiceHandle:()I
istore 2
start local 2 5: aload 1
iload 2
invokeinterface android.nfc.INfcTag.isNdef:(I)Z
ifeq 11
6: aload 1
iload 2
invokeinterface android.nfc.INfcTag.ndefRead:(I)Landroid/nfc/NdefMessage;
astore 3
start local 3 7: aload 3
ifnonnull 9
aload 1
iload 2
invokeinterface android.nfc.INfcTag.isPresent:(I)Z
ifne 9
8: new android.nfc.TagLostException
dup
invokespecial android.nfc.TagLostException.<init>:()V
athrow
9: StackMap locals: int android.nfc.NdefMessage
StackMap stack:
aload 3
10: areturn
end local 3 11: StackMap locals:
StackMap stack:
aload 1
iload 2
invokeinterface android.nfc.INfcTag.isPresent:(I)Z
ifne 13
12: new android.nfc.TagLostException
dup
invokespecial android.nfc.TagLostException.<init>:()V
athrow
13: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 2 end local 1 14: StackMap locals: android.nfc.tech.Ndef
StackMap stack: android.os.RemoteException
astore 1
start local 1 15: ldc "NFC"
ldc "NFC service dead"
aload 1
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
16: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Landroid/nfc/tech/Ndef;
2 14 1 tagService Landroid/nfc/INfcTag;
5 14 2 serviceHandle I
7 11 3 msg Landroid/nfc/NdefMessage;
15 17 1 e Landroid/os/RemoteException;
Exception table:
from to target type
1 10 14 Class android.os.RemoteException
11 13 14 Class android.os.RemoteException
Exceptions:
throws java.io.IOException, android.nfc.FormatException
public void writeNdefMessage(android.nfc.NdefMessage);
descriptor: (Landroid/nfc/NdefMessage;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual android.nfc.tech.Ndef.checkConnected:()V
1: aload 0
getfield android.nfc.tech.Ndef.mTag:Landroid/nfc/Tag;
invokevirtual android.nfc.Tag.getTagService:()Landroid/nfc/INfcTag;
astore 2
start local 2 2: aload 2
ifnonnull 4
3: new java.io.IOException
dup
ldc "Mock tags don't support this operation."
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: android.nfc.INfcTag
StackMap stack:
aload 0
getfield android.nfc.tech.Ndef.mTag:Landroid/nfc/Tag;
invokevirtual android.nfc.Tag.getServiceHandle:()I
istore 3
start local 3 5: aload 2
iload 3
invokeinterface android.nfc.INfcTag.isNdef:(I)Z
ifeq 13
6: aload 2
iload 3
aload 1
invokeinterface android.nfc.INfcTag.ndefWrite:(ILandroid/nfc/NdefMessage;)I
istore 4
start local 4 7: iload 4
lookupswitch { // 3
-8: 10
-1: 9
0: 8
default: 11
}
8: StackMap locals: int int
StackMap stack:
goto 16
9: StackMap locals:
StackMap stack:
new java.io.IOException
dup
invokespecial java.io.IOException.<init>:()V
athrow
10: StackMap locals:
StackMap stack:
new android.nfc.FormatException
dup
invokespecial android.nfc.FormatException.<init>:()V
athrow
11: StackMap locals:
StackMap stack:
new java.io.IOException
dup
invokespecial java.io.IOException.<init>:()V
athrow
end local 4 12: StackMap locals:
StackMap stack:
goto 16
13: StackMap locals:
StackMap stack:
new java.io.IOException
dup
ldc "Tag is not ndef"
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
end local 3 end local 2 14: StackMap locals: android.nfc.tech.Ndef android.nfc.NdefMessage
StackMap stack: android.os.RemoteException
astore 2
start local 2 15: ldc "NFC"
ldc "NFC service dead"
aload 2
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
end local 2 16: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Landroid/nfc/tech/Ndef;
0 17 1 msg Landroid/nfc/NdefMessage;
2 14 2 tagService Landroid/nfc/INfcTag;
5 14 3 serviceHandle I
7 12 4 errorCode I
15 16 2 e Landroid/os/RemoteException;
Exception table:
from to target type
1 14 14 Class android.os.RemoteException
Exceptions:
throws java.io.IOException, android.nfc.FormatException
MethodParameters:
Name Flags
msg
public boolean canMakeReadOnly();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield android.nfc.tech.Ndef.mTag:Landroid/nfc/Tag;
invokevirtual android.nfc.Tag.getTagService:()Landroid/nfc/INfcTag;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: iconst_0
ireturn
3: StackMap locals: android.nfc.INfcTag
StackMap stack:
aload 1
aload 0
getfield android.nfc.tech.Ndef.mNdefType:I
invokeinterface android.nfc.INfcTag.canMakeReadOnly:(I)Z
4: ireturn
5: StackMap locals:
StackMap stack: android.os.RemoteException
astore 2
start local 2 6: ldc "NFC"
ldc "NFC service dead"
aload 2
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
7: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Landroid/nfc/tech/Ndef;
1 8 1 tagService Landroid/nfc/INfcTag;
6 8 2 e Landroid/os/RemoteException;
Exception table:
from to target type
3 4 5 Class android.os.RemoteException
public boolean makeReadOnly();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual android.nfc.tech.Ndef.checkConnected:()V
1: aload 0
getfield android.nfc.tech.Ndef.mTag:Landroid/nfc/Tag;
invokevirtual android.nfc.Tag.getTagService:()Landroid/nfc/INfcTag;
astore 1
start local 1 2: aload 1
ifnonnull 4
3: iconst_0
ireturn
4: StackMap locals: android.nfc.INfcTag
StackMap stack:
aload 1
aload 0
getfield android.nfc.tech.Ndef.mTag:Landroid/nfc/Tag;
invokevirtual android.nfc.Tag.getServiceHandle:()I
invokeinterface android.nfc.INfcTag.isNdef:(I)Z
ifeq 11
5: aload 1
aload 0
getfield android.nfc.tech.Ndef.mTag:Landroid/nfc/Tag;
invokevirtual android.nfc.Tag.getServiceHandle:()I
invokeinterface android.nfc.INfcTag.ndefMakeReadOnly:(I)I
istore 2
start local 2 6: iload 2
lookupswitch { // 3
-8: 9
-1: 8
0: 7
default: 10
}
7: StackMap locals: int
StackMap stack:
iconst_1
ireturn
8: StackMap locals:
StackMap stack:
new java.io.IOException
dup
invokespecial java.io.IOException.<init>:()V
athrow
9: StackMap locals:
StackMap stack:
iconst_0
ireturn
10: StackMap locals:
StackMap stack:
new java.io.IOException
dup
invokespecial java.io.IOException.<init>:()V
athrow
end local 2 11: StackMap locals:
StackMap stack:
new java.io.IOException
dup
ldc "Tag is not ndef"
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
end local 1 12: StackMap locals: android.nfc.tech.Ndef
StackMap stack: android.os.RemoteException
astore 1
start local 1 13: ldc "NFC"
ldc "NFC service dead"
aload 1
invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
14: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Landroid/nfc/tech/Ndef;
2 12 1 tagService Landroid/nfc/INfcTag;
6 11 2 errorCode I
13 15 1 e Landroid/os/RemoteException;
Exception table:
from to target type
1 3 12 Class android.os.RemoteException
4 7 12 Class android.os.RemoteException
8 9 12 Class android.os.RemoteException
10 12 12 Class android.os.RemoteException
Exceptions:
throws java.io.IOException
public void close();
descriptor: ()V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial android.nfc.tech.BasicTagTechnology.close:()V
return
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.io.IOException
public void connect();
descriptor: ()V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial android.nfc.tech.BasicTagTechnology.connect:()V
return
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.io.IOException
public boolean isConnected();
descriptor: ()Z
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial android.nfc.tech.BasicTagTechnology.isConnected:()Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
public android.nfc.Tag getTag();
descriptor: ()Landroid/nfc/Tag;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial android.nfc.tech.BasicTagTechnology.getTag:()Landroid/nfc/Tag;
areturn
LocalVariableTable:
Start End Slot Name Signature
public void reconnect();
descriptor: ()V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial android.nfc.tech.BasicTagTechnology.reconnect:()V
return
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.io.IOException
}
SourceFile: "Ndef.java"