public final class NfcBarcode extends Object
Acquire an NfcBarcode
object using get(android.nfc.Tag)
.
Modifier and Type | Field and Description |
---|---|
static String |
EXTRA_BARCODE_TYPE |
static int |
TYPE_KOVIO
Kovio Tags
|
static int |
TYPE_UNKNOWN |
ISO_DEP, MIFARE_CLASSIC, MIFARE_ULTRALIGHT, NDEF, NDEF_FORMATABLE, NFC_A, NFC_B, NFC_BARCODE, NFC_F, NFC_V
Constructor and Description |
---|
NfcBarcode(Tag tag)
Internal constructor, to be used by NfcAdapter
|
Modifier and Type | Method and Description |
---|---|
void |
close()
Disable I/O operations to the tag from this
TagTechnology object, and release resources. |
void |
connect()
Enable I/O operations to the tag from this
TagTechnology object. |
static NfcBarcode |
get(Tag tag)
Get an instance of
NfcBarcode for the given tag. |
byte[] |
getBarcode()
Returns the barcode of an NfcBarcode tag.
|
Tag |
getTag()
Get the
Tag object backing this TagTechnology object. |
int |
getType()
Returns the NFC Barcode tag type.
|
boolean |
isConnected()
Helper to indicate if I/O operations should be possible.
|
void |
reconnect()
Re-connect to the
Tag associated with this connection. |
public static final int TYPE_KOVIO
public static final int TYPE_UNKNOWN
public static final String EXTRA_BARCODE_TYPE
public NfcBarcode(Tag tag) throws RemoteException
RemoteException
public static NfcBarcode get(Tag tag)
NfcBarcode
for the given tag.
Returns null if NfcBarcode
was not enumerated in Tag.getTechList()
.
Does not cause any RF activity and does not block.
tag
- an NfcBarcode compatible tagpublic int getType()
Currently only one of TYPE_KOVIO
or TYPE_UNKNOWN
.
Does not cause any RF activity and does not block.
public byte[] getBarcode()
Does not cause any RF activity and does not block.
public Tag getTag()
TagTechnology
Tag
object backing this TagTechnology
object.getTag
in interface TagTechnology
Tag
backing this TagTechnology
object.public boolean isConnected()
TagTechnology
Returns true if TagTechnology.connect()
has completed, and TagTechnology.close()
has not been
called, and the Tag
is not known to be out of range.
Does not cause RF activity, and does not block.
isConnected
in interface TagTechnology
public void connect() throws IOException
TagTechnology
TagTechnology
object.
May cause RF activity and may block. Must not be called
from the main application thread. A blocked call will be canceled with
IOException
by calling TagTechnology.close()
from another thread.
Only one TagTechnology
object can be connected to a Tag
at a time.
Applications must call TagTechnology.close()
when I/O operations are complete.
Requires the android.Manifest.permission#NFC
permission.
connect
in interface TagTechnology
IOException
- if there is an I/O failure, or connect is canceledTagTechnology.close()
public void reconnect() throws IOException
TagTechnology
Tag
associated with this connection. Reconnecting to a tag can be
used to reset the state of the tag itself.
May cause RF activity and may block. Must not be called
from the main application thread. A blocked call will be canceled with
IOException
by calling TagTechnology.close()
from another thread.
Requires the android.Manifest.permission#NFC
permission.
reconnect
in interface TagTechnology
IOException
- if there is an I/O failure, or connect is canceledTagTechnology.connect()
,
TagTechnology.close()
public void close() throws IOException
TagTechnology
TagTechnology
object, and release resources.
Also causes all blocked I/O operations on other thread to be canceled and
return with IOException
.
Requires the android.Manifest.permission#NFC
permission.
close
in interface TagTechnology
close
in interface Closeable
close
in interface AutoCloseable
IOException
TagTechnology.connect()