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