FakeTech class

One technology on a tag built by fakeNfcTag, as the platform would report it.

Every factory takes this package's own value types and plain Dart values. That is deliberate: the generated wire classes a tag is really made of are @internal and their shape changes without a major version, so a test written against them would break on a patch release that only touched the schema.

The Android technologies and the CoreNFC protocols live side by side here, and nothing stops a tag carrying both. No device delivers such a tag, but a test that wants one object to drive both platforms' branches through is a reasonable thing to want.

Constructors

FakeTech.felica({Uint8List? currentSystemCode, Uint8List? currentIDm})
NFCFeliCaTag. iOS only.
factory
FakeTech.iso7816({String initialSelectedAID = '', Uint8List? historicalBytes, Uint8List? applicationData, bool proprietaryApplicationDataCoding = false})
NFCISO7816Tag. iOS only; Android reaches the same cards through FakeTech.isoDep.
factory
FakeTech.iso15693({int icManufacturerCode = 0, Uint8List? icSerialNumber})
NFCISO15693Tag. iOS only; Android reaches the same tags through FakeTech.nfcV.
factory
FakeTech.isoDep({Uint8List? hiLayerResponse, Uint8List? historicalBytes, bool isExtendedLengthApduSupported = false, int maxTransceiveLength = _maxTransceiveLength, Duration timeout = _timeout})
android.nfc.tech.IsoDep. ISO 14443-4, which is what an APDU rides on.
factory
FakeTech.mifare({MiFareFamily family = MiFareFamily.ultralight, Uint8List? historicalBytes})
NFCMiFareTag. iOS only.
factory
FakeTech.mifareClassic({MifareClassicType type = MifareClassicType.classic, int blockCount = 64, int sectorCount = 16, int size = MifareClassic.size1K, int maxTransceiveLength = _maxTransceiveLength, Duration timeout = _timeout})
android.nfc.tech.MifareClassic.
factory
FakeTech.mifareUltralight({MifareUltralightType type = MifareUltralightType.ultralight, int maxTransceiveLength = _maxTransceiveLength, Duration timeout = _timeout})
android.nfc.tech.MifareUltralight.
factory
FakeTech.ndefAndroid({String type = 'org.nfcforum.ndef.type2', int maxSize = _ndefCapacity, bool isWritable = true, bool canMakeReadOnly = true, NdefMessage? cachedMessage})
android.nfc.tech.Ndef, which carries both Ndef and NdefAndroid.
factory
FakeTech.ndefFormatable()
android.nfc.tech.NdefFormatable. A tag that could hold NDEF but does not yet.
factory
FakeTech.ndefIos({NdefStatus status = NdefStatus.readWrite, int capacity = _ndefCapacity, NdefMessage? cachedMessage})
NFCNDEFTag, which carries both Ndef and NdefIos. iOS reports no technology name.
factory
FakeTech.nfcA({Uint8List? atqa, int sak = 0x08, int maxTransceiveLength = _maxTransceiveLength, Duration timeout = _timeout})
android.nfc.tech.NfcA. ISO 14443-3A.
factory
FakeTech.nfcB({Uint8List? applicationData, Uint8List? protocolInfo, int maxTransceiveLength = _maxTransceiveLength})
android.nfc.tech.NfcB. ISO 14443-3B.
factory
FakeTech.nfcBarcode({NfcBarcodeType type = NfcBarcodeType.kovio, Uint8List? barcode})
android.nfc.tech.NfcBarcode. Only a session that asked for barcode tags sees one.
factory
FakeTech.nfcF({Uint8List? manufacturer, Uint8List? systemCode, int maxTransceiveLength = _maxTransceiveLength, Duration timeout = _timeout})
android.nfc.tech.NfcF. JIS 6319-4, the FeliCa transport.
factory
FakeTech.nfcV({int dsfId = 0, int responseFlags = 0, int maxTransceiveLength = _maxTransceiveLength})
android.nfc.tech.NfcV. ISO 15693, which iOS reaches through FakeTech.iso15693.
factory

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited