Added in API level 17

NfcBarcode


class NfcBarcode : TagTechnology
kotlin.Any
   ↳ android.nfc.tech.NfcBarcode

Provides access to tags containing just a barcode.

Acquire an NfcBarcode object using get.

Summary

Constants
static Int

Kovio Tags

static Int

Public methods
Unit

Unit

static NfcBarcode!
get(tag: Tag!)

Get an instance of NfcBarcode for the given tag.

ByteArray!

Returns the barcode of an NfcBarcode tag.

Tag!

Int

Returns the NFC Barcode tag type.

Boolean

Constants

TYPE_KOVIO

Added in API level 17
static val TYPE_KOVIO: Int

Kovio Tags

Value: 1

TYPE_UNKNOWN

Added in API level 17
static val TYPE_UNKNOWN: Int
Value: -1

Public methods

close

Added in API level 17
fun close(): Unit
Exceptions
java.lang.Exception if this resource cannot be closed
java.io.IOException if an I/O error occurs
java.lang.SecurityException if the tag object is reused after the tag has left the field

connect

Added in API level 17
fun connect(): Unit
Exceptions
TagLostException if the tag leaves the field
java.io.IOException if there is an I/O failure, or connect is canceled
java.lang.SecurityException if the tag object is reused after the tag has left the field

get

Added in API level 17
static fun get(tag: Tag!): NfcBarcode!

Get an instance of 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.

Parameters
tag Tag!: an NfcBarcode compatible tag
Return
NfcBarcode! NfcBarcode object

getBarcode

Added in API level 17
fun getBarcode(): ByteArray!

Returns the barcode of an NfcBarcode tag.

Tags of TYPE_KOVIO return 16 bytes:

    The first byte is 0x80 ORd with a manufacturer ID, corresponding to ISO/IEC 7816-6.

    The second byte describes the payload data format. Defined data format types include the following:

    • 0x00: Reserved for manufacturer assignment
    • 0x01: 96-bit URL with "http://www." prefix
    • 0x02: 96-bit URL with "https://www." prefix
    • 0x03: 96-bit URL with "http://" prefix
    • 0x04: 96-bit URL with "https://" prefix
    • 0x05: 96-bit GS1 EPC
    • 0x06-0xFF: reserved

    The following 12 bytes are payload:

    The last 2 bytes comprise the CRC.

Does not cause any RF activity and does not block.

Return
ByteArray! a byte array containing the barcode

See Also

    getTag

    Added in API level 17
    fun getTag(): Tag!
    Return
    Tag! the Tag backing this TagTechnology object.

    getType

    Added in API level 17
    fun getType(): Int

    Returns the NFC Barcode tag type.

    Currently only one of TYPE_KOVIO or TYPE_UNKNOWN.

    Does not cause any RF activity and does not block.

    Return
    Int the NFC Barcode tag type

    isConnected

    Added in API level 17
    fun isConnected(): Boolean
    Return
    Boolean true if I/O operations should be possible