Package apple.corenfc.protocol
Interface NFCISO7816Tag
-
- All Superinterfaces:
NFCNDEFTag,NFCTag,NSCoding,NSCopying,NSSecureCoding
public interface NFCISO7816Tag extends NFCTag, NFCNDEFTag
[@protocol] NFCISO7816Tag A @link NFCTagReaderSession @link/ reader session returns an instance conforming to this protocol when an ISO7816 compatible tag is detected. Unless it is specified all block completion handlers are dispatched on the session work queue that is associated with the tag. Your process requires to include the "com.apple.developer.nfc.readersession.formats" entitlement and the "com.apple.developer.nfc.readersession.iso7816.select-identifiers" key in the application's Info.plist to receive this tag object from the @link NFCTagReaderSessionDelegate @link/ delegate. [@link] NFCReaderErrorSecurityViolation @link/ will be returned from the @link NFCTagReaderSessionDelegate @link/ invalidation method if the required entitlement is missing or "com.apple.developer.nfc.readersession.iso7816.select-identifiers" does not contain at least one valid entry. When the reader discovered a compatible ISO7816 tag it automatically performs a SELECT command (by DF name) using the values provided in "com.apple.developer.nfc.readersession.iso7816.select-identifiers" in the specified array order. The tag is returned from the [NFCTagReaderSessionDelegate readerSession:didDetectTags:] call on the first successful SELECT command. The initialSelectedAID property returns the application identifier of the selected application. Tag will not be returned to the NFCTagReaderSessionDelegate if no application described in "com.apple.developer.nfc.readersession.iso7816.select-identifiers" is found. Tag must be in the connected state for NFCNDEFTag protocol properties and methods to work correctly.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceNFCISO7816Tag.Block_sendCommandAPDUCompletionHandler-
Nested classes/interfaces inherited from interface apple.corenfc.protocol.NFCNDEFTag
NFCNDEFTag.Block_queryNDEFStatusWithCompletionHandler, NFCNDEFTag.Block_readNDEFWithCompletionHandler, NFCNDEFTag.Block_writeLockWithCompletionHandler, NFCNDEFTag.Block_writeNDEFCompletionHandler
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description NSDataapplicationData()The optional Application Data bytes extracted from the Type B Answer To Request response.NSDatahistoricalBytes()The optional historical bytes extracted from the Type A Answer To Select response.NSDataidentifier()The hardware UID of the tag.java.lang.StringinitialSelectedAID()[@property] initialSelectedAID The Hex string of the application identifier (DF name) selected by the reader when the tag is discovered.booleanproprietaryApplicationDataCoding()Indicates if @link applicationData @link/ follows proprietary data coding.voidsendCommandAPDUCompletionHandler(NFCISO7816APDU apdu, NFCISO7816Tag.Block_sendCommandAPDUCompletionHandler completionHandler)sendCommandAPDU:completionHandler: Send a command APDU to the tag and receives a response APDU.-
Methods inherited from interface apple.corenfc.protocol.NFCNDEFTag
isAvailable, queryNDEFStatusWithCompletionHandler, readNDEFWithCompletionHandler, writeLockWithCompletionHandler, writeNDEFCompletionHandler
-
Methods inherited from interface apple.corenfc.protocol.NFCTag
asNFCFeliCaTag, asNFCISO15693Tag, asNFCISO7816Tag, asNFCMiFareTag, isAvailable, session, type
-
Methods inherited from interface apple.foundation.protocol.NSCoding
encodeWithCoder, initWithCoder
-
Methods inherited from interface apple.foundation.protocol.NSCopying
copyWithZone
-
Methods inherited from interface apple.foundation.protocol.NSSecureCoding
_supportsSecureCoding
-
-
-
-
Method Detail
-
applicationData
NSData applicationData()
The optional Application Data bytes extracted from the Type B Answer To Request response.
-
historicalBytes
NSData historicalBytes()
The optional historical bytes extracted from the Type A Answer To Select response.
-
identifier
NSData identifier()
The hardware UID of the tag.
-
initialSelectedAID
java.lang.String initialSelectedAID()
[@property] initialSelectedAID The Hex string of the application identifier (DF name) selected by the reader when the tag is discovered. This will match one of the entries in the "com.apple.developer.nfc.readersession.iso7816.select-identifiers" in the Info.plist.
-
proprietaryApplicationDataCoding
boolean proprietaryApplicationDataCoding()
Indicates if @link applicationData @link/ follows proprietary data coding. If false, the format of the application data is defined in the ISO14443-3 specification.
-
sendCommandAPDUCompletionHandler
void sendCommandAPDUCompletionHandler(NFCISO7816APDU apdu, NFCISO7816Tag.Block_sendCommandAPDUCompletionHandler completionHandler)
sendCommandAPDU:completionHandler: Send a command APDU to the tag and receives a response APDU. Note that a SELECT command with a P1 value of 0x04 (seelction by DF name) will be checked against the values listed in the "com.apple.developer.nfc.readersession.iso7816.select-identifiers" in the Info.plist. Selecting an application outside of the permissible list will result in a NFCReaderErrorSecurityViolation error.- Parameters:
apdu- The command APDU objectcompletionHandler- Completion handler called when the operation is completed. error is nil if operation succeeds. A @link NFCErrorDomain @link/ error is returned when there is a communication issue with the tag. responseData may be empty. Command processing status bytes (SW1-SW2) are always valid.
-
-