# Class TagTechnology

java.lang.Object
com.codename1.nfc.TagTechnology

Direct Known Subclasses:
  `IsoDep, MifareClassic, MifareUltralight, NfcA, NfcB, NfcF, NfcV`

public abstract class TagTechnology extends java.lang.Object

Common surface for the low-level technology views attached to a `Tag` -- `IsoDep`, `MifareClassic`, `MifareUltralight`, `NfcA`, `NfcB`, `NfcF`, `NfcV`. Application code never instantiates these directly -- they are returned by accessors on `Tag`.

Each technology exposes a [#transceive(byte[])] method that fires raw bytes at the tag and returns the response. The exact framing depends on the technology -- `IsoDep` expects ISO 7816 APDUs, `MifareClassic` expects single-block commands, etc. Always defer to the technology- specific subclass docs.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `TagTechnology()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `abstract TagType`
  `getType()`
  The technology variant this view represents.
  `AsyncResource<byte[]>`
  `transceive(byte[] payload)`
  Sends the given raw bytes to the tag and resolves with the response.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### TagTechnology

    public TagTechnology()

- ## Method Details

  - ### getType

    public abstract TagType getType()
    The technology variant this view represents.

  - ### transceive

    public AsyncResource<byte[]> transceive(byte[] payload)
    Sends the given raw bytes to the tag and resolves with the response. The base class reports `NfcError.UNSUPPORTED_TAG` -- ports override per technology.