One Logo Pool Ball
CoreNFC · IOS API REFERENCE

NFCISO15693Tag

protocol · iOS 11.0+ · SDK 27.1

protocol NFCISO15693Tag : NFCNDEFTag, __NFCTag

Members (24)

method · iOS 14.0+

readBuffer

Swift declaration
@preconcurrency func readBuffer(requestFlags flags: NFCISO15693RequestFlag, resultHandler: @escaping @Sendable (Result<(NFCISO15693ResponseFlag, Data), any Error>) -> Void)

Read buffer command (0x3A command code) as defined in ISO15693-3 specification. - Parameters: - flags: Request flags. - resultHandler: Completion handler called when the operation is completed. A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A NFCISO15693TagResponseErrorKey in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification. Successfully command response will be return as Data object excluding the 8 bits response flag.

method · iOS 14.0+

readBuffer

Swift declaration
func readBuffer(requestFlags flags: NFCISO15693RequestFlag) async throws -> (NFCISO15693ResponseFlag, Data)

Read buffer command (0x3A command code) as defined in ISO15693-3 specification. - Parameters: - flags: Request flags. - Returns: A `(NFCISO15693ResponseFlag, Data)` tuple; data consists of Parameters and Data field per "Response Format" definition from the specification. A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A NFCISO15693TagResponseErrorKey in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification.

method · iOS 14.0+

systemInfo

Swift declaration
func systemInfo(requestFlags flags: NFCISO15693RequestFlag) async throws -> NFCISO15693SystemInfo

Get system information command (0x2B command code) as defined in ISO15693-3 specification. Address flag is automatically enforced by default and the tag's UID is sent with the command; setting RequestFlagSelect to flags will disable the Address flag. - Parameters: - flags: Request flags. - Returns: A `NFCISO15693SystemInfo` object. A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A `NFCISO15693TagResponseErrorKey` in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification.

method · iOS 14.0+

sendRequest

Swift declaration
@preconcurrency func sendRequest(requestFlags flags: Int, commandCode: Int, data: Data?, resultHandler: @escaping @Sendable (Result<(NFCISO15693ResponseFlag, Data?), any Error>) -> Void)

Send a command according to the ISO15693-3 specification. The request data frame is concatenation of 8 bits request flag, 8 bits command code, and optional data. The 8 bits response flag and the data are returned in the completion handler. - Parameters: - flags: Request flags. - commandCode: 8 bis command code. - data: Data follows after the command code. - resultHandler: Returns a `(NFCISO15693ResponseFlag, Data)` tuple; data consists of Parameters and Data field per "Response Format" definition from the specification.

method · iOS 14.0+

sendRequest

Swift declaration
func sendRequest(requestFlags flags: Int, commandCode: Int, data: Data?) async throws -> (NFCISO15693ResponseFlag, Data?)

Send a command according to the ISO15693-3 specification. The request data frame is concatenation of 8 bits request flag, 8 bits command code, and optional data. - Parameters: - flags: Request flags. - commandCode: 8 bis command code. - data: Data follows after the command code. - Returns: Returns a `(NFCISO15693ResponseFlag, Data)` tuple; data consists of Parameters and Data field per "Response Format" definition from the specification.

method · iOS 14.0+

authenticate

Swift declaration
@preconcurrency func authenticate(requestFlags flags: NFCISO15693RequestFlag, cryptoSuiteIdentifier: Int, message: Data, resultHandler: @escaping @Sendable (Result<(NFCISO15693ResponseFlag, Data), any Error>) -> Void)

Authenticate command (0x35 command code) as defined in ISO15693-3 specification. Please note that in-process reply is returned to the caller without any processing. - Parameters: - flags: Request flags. - cryptoSuiteIdentifier: 8 bits Crypto Suite Indicator as defined in ISO/IEC 29167 specification. - message: Content of the Authenticate command as dictated by the Crypto Suite Indicator. - resultHandler: Completion handler called when the operation is completed. A `(NFCISO15693ResponseFlag, Data)` tuple is returned on success; data consists of Parameters and Data field per "Response Format" definition from the specification. A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A `NFCISO15693TagResponseErrorKey` in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification.

method · iOS 14.0+

authenticate

Swift declaration
func authenticate(requestFlags flags: NFCISO15693RequestFlag, cryptoSuiteIdentifier: Int, message: Data) async throws -> (NFCISO15693ResponseFlag, Data)

Authenticate command (0x35 command code) as defined in ISO15693-3 specification. Please note that in-process reply is returned to the caller without any processing. - Parameters: - flags: Request flags. - cryptoSuiteIdentifier: 8 bits Crypto Suite Indicator as defined in ISO/IEC 29167 specification. - message: Content of the Authenticate command as dictated by the Crypto Suite Indicator. - Returns: A `(NFCISO15693ResponseFlag, Data)` tuple; data consists of Parameters and Data field per "Response Format" definition from the specification. A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A `NFCISO15693TagResponseErrorKey` in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification.

method · iOS 14.0+

customCommand

Swift declaration
@preconcurrency func customCommand(requestFlags flags: NFCISO15693RequestFlag, customCommandCode: Int, customRequestParameters: Data, resultHandler: @escaping @Sendable (Result<Data, any Error>) -> Void)

Custom command (0xA0 to 0xDF command code) as defined in ISO15693-3 specification. IC manufacturer code from the tag is automatically inserted after the command byte before appending the custom request parameters in forming the packet. - Parameters: - flags: Request flags. - customCommandCode: Custom command code defined by the IC manufacturer. Valid range is 0xA0 to 0xDF inclusively. - customRequestParameters: Custom request parameters defined by the command. - resultHandler: Completion handler called when the operation is completed. A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A `NFCISO15693TagResponseErrorKey` in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification. The custom response parameters are returned on success.

method · iOS 14.0+

getSystemInfo

Swift declaration
@preconcurrency func getSystemInfo(requestFlags flags: NFCISO15693RequestFlag, resultHandler: @escaping @Sendable (Result<NFCISO15693SystemInfo, any Error>) -> Void)

Get system information command (0x2B command code) as defined in ISO15693-3 specification. Address flag is automatically enforced by default and the tag's UID is sent with the command; setting RequestFlagSelect to flags will disable the Address flag. - Parameters: - flags: Request flags. - resultHandler: Completion handler called when the operation is completed. A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A `NFCISO15693TagResponseErrorKey` in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification. `blockSize` returns the actual block size in bytes ranged from 1 to 32. `totalBlocks` returns the actual number of blocks ranged from 1 to 256 blocks.

method · iOS 14.0+

readSingleBlock

Swift declaration
@preconcurrency func readSingleBlock(requestFlags flags: NFCISO15693RequestFlag, blockNumber: UInt8, resultHandler: @escaping @Sendable (Result<Data, any Error>) -> Void)

Read single block command (0x20 command code) as defined in ISO15693-3 specification. Address flag is automatically enforced by default and the tag's UID is sent with the command; setting RequestFlagSelect to flags will disable the Address flag. - Parameters: - flags: Request flags. - blockNumber: Block number. Blocks are numbered from 0 to 255 inclusively. - resultHandler: Completion handler called when the operation is completed. A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A `NFCISO15693TagResponseErrorKey` in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification. Successfully read data blocks will be returned from Data object. If Option flag in the request flags is set, then first byte of data block will contain the associated block security status.

method · iOS 14.0+

readMultipleBlocks

Swift declaration
@preconcurrency func readMultipleBlocks(requestFlags flags: NFCISO15693RequestFlag, blockRange: NSRange, resultHandler: @escaping @Sendable (Result<[Data], any Error>) -> Void)

Read multiple blocks command (0x23 command code) as defined in ISO15693-3 specification. Address flag is automatically enforced by default and the tag's UID is sent with the command; setting RequestFlagSelect to flags will disable the Address flag. - Parameters: - flags: Request flags. - blockRange: The range of blocks. Valid start index range is 0 to 255 inclusively. Valid length is 1 to 256 inclusively. - resultHandler: Completion handler called when the operation is completed. A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A `NFCISO15693TagResponseErrorKey` in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification. Successfully read data blocks will be returned from an array of Data object. If Option flag in the request flags is set, then first byte of each returned data block will contain the associated block security status. Each data block element would have identical size.

method · iOS 14.0+

fastReadMultipleBlocks

Swift declaration
@preconcurrency func fastReadMultipleBlocks(requestFlags flags: NFCISO15693RequestFlag, blockRange: NSRange, resultHandler: @escaping @Sendable (Result<[Data], any Error>) -> Void)

Fast read multiple blocks command (0x2D command code) as defined in ISO15693-3 specification. - Parameters: - flags: Request flags. - blockRange: The range of blocks. Valid start index range is 0 to 255 inclusively. Valid length is 1 to 256 inclusively. - resultHandler: Returns an array of Data or an Error when the operation is completed.

method · iOS 14.0+

fastReadMultipleBlocks

Swift declaration
func fastReadMultipleBlocks(requestFlags flags: NFCISO15693RequestFlag, blockRange: NSRange) async throws -> [Data]

Fast read multiple blocks command (0x2D command code) as defined in ISO15693-3 specification. - Parameters: - flags: Request flags. - blockRange: The range of blocks. Valid start index range is 0 to 255 inclusively. Valid length is 1 to 256 inclusively. - Returns An array of Data blocks.

method · iOS 14.0+

extendedReadSingleBlock

Swift declaration
@preconcurrency func extendedReadSingleBlock(requestFlags flags: NFCISO15693RequestFlag, blockNumber: Int, resultHandler: @escaping @Sendable (Result<Data, any Error>) -> Void)

Extended read single block command (0x30 command code) as defined in ISO15693-3 specification. Address flag is automatically enforced by default and the tag's UID is sent with the command; setting RequestFlagSelect to flags will disable the Address flag. - Parameters: - flags: Request flags. - blockNumber: 2 bytes block number, valid range from 0 to 65535 inclusively. - resultHandler: Completion handler called when the operation is completed. A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A `NFCISO15693TagResponseErrorKey` in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification. If Option flag in the request flags is set, then first byte of the returned data block will contain the associated block security status.

method · iOS 14.0+

extendedWriteMultipleBlocks

Swift declaration
@preconcurrency func extendedWriteMultipleBlocks(requestFlags flags: NFCISO15693RequestFlag, blockRange: NSRange, dataBlocks: [Data], completionHandler: @escaping @Sendable ((any Error)?) -> Void)

Extended write multiple block command (0x34 command code) as defined in ISO15693-3 specification. - Parameters: - flags: Request flags. - blockRange: The range of blocks. Valid start index range is 0 to 65535 inclusively. Valid length is 1 to 65536 inclusively. - dataBlocks: Blocks of data represented in array of Data. The number of blocks shall match the length value of the blockRange parameter. Each block element should have identical size and should match the physical block size of the tag. - completionHandler: Completion handler called when the operation is completed. error is nil if operation succeeds. A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A `NFCISO15693TagResponseErrorKey` in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification.

method · iOS 14.0+

extendedWriteMultipleBlocks

Swift declaration
func extendedWriteMultipleBlocks(requestFlags flags: NFCISO15693RequestFlag, blockRange: NSRange, dataBlocks: [Data]) async throws

Extended write multiple block command (0x34 command code) as defined in ISO15693-3 specification. - Parameters: - flags: Request flags. - blockRange: The range of blocks. Valid start index range is 0 to 65535 inclusively. Valid length is 1 to 65536 inclusively. - dataBlocks: Blocks of data represented in array of Data. The number of blocks shall match the length value of the blockRange parameter. Each block element should have identical size and should match the physical block size of the tag. - Returns: A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A `NFCISO15693TagResponseErrorKey` in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification.

method · iOS 14.0+

extendedFastReadMultipleBlocks

Swift declaration
@preconcurrency func extendedFastReadMultipleBlocks(requestFlags flags: NFCISO15693RequestFlag, blockRange: NSRange, resultHandler: @escaping @Sendable (Result<[Data], any Error>) -> Void)

Fast read multiple blocks command (0x3D command code) as defined in ISO15693-3 specification. - Parameters: - flags: Request flags. - resultHandler: Returns an array of Data or an Error when the operation is completed.

method · iOS 14.0+

extendedFastReadMultipleBlocks

Swift declaration
func extendedFastReadMultipleBlocks(requestFlags flags: NFCISO15693RequestFlag, blockRange: NSRange) async throws -> [Data]

Fast read multiple blocks command (0x3D command code) as defined in ISO15693-3 specification. - Parameters: - flags: Request flags. - Returns: Returns an array of Data or an Error when the operation is completed.

method · iOS 14.0+

extendedGetMultipleBlockSecurityStatus

Swift declaration
@preconcurrency func extendedGetMultipleBlockSecurityStatus(requestFlags flags: NFCISO15693RequestFlag, blockRange: NSRange, resultHandler: @escaping @Sendable (Result<NFCISO15693MultipleBlockSecurityStatus, any Error>) -> Void)

Get multiple block security status command (0x3C command code) as defined in ISO15693-3 specification. Address flag is automatically enforced by default and the tag's UID is sent with the command; setting RequestFlagSelect to flags will disable the Address flag. - Parameters: - flags: Request flags. - blockRange: The range of blocks. Valid start index range is 0 to 255 inclusively. Valid length is 1 to 256 inclusively. - resultHandler: Completion handler called when the operation is completed. A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A `NFCISO15693TagResponseErrorKey` in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification.

method · iOS 14.0+

extendedGetMultipleBlockSecurityStatus

Swift declaration
func extendedGetMultipleBlockSecurityStatus(requestFlags flags: NFCISO15693RequestFlag, blockRange: NSRange) async throws -> NFCISO15693MultipleBlockSecurityStatus

Get multiple block security status command (0x3C command code) as defined in ISO15693-3 specification. Address flag is automatically enforced by default and the tag's UID is sent with the command; setting RequestFlagSelect to flags will disable the Address flag. - Parameters: - flags: Request flags. - blockRange: The range of blocks. Valid start index range is 0 to 255 inclusively. Valid length is 1 to 256 inclusively. - Returns: Array of status on the requested block range. A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A `NFCISO15693TagResponseErrorKey` in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification.

method · iOS 14.0+

challenge

Swift declaration
@preconcurrency func challenge(requestFlags flags: NFCISO15693RequestFlag, cryptoSuiteIdentifier: Int, message: Data, completionHandler: @escaping @Sendable ((any Error)?) -> Void)

Challenge command (0x39 command code) as defined in ISO15693-3 specification. - Parameters: - flags: Request flags. - cryptoSuiteIdentifier: 8 bits Crypto Suite Indicator as defined in ISO/IEC 29167 specification. - message: Content of the Key Update command as dictated by the Crypto Suite Indicator used in Authenticate. - completionHandler: Completion handler called when the operation is completed. A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A `NFCISO15693TagResponseErrorKey` in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification.

method · iOS 14.0+

challenge

Swift declaration
func challenge(requestFlags flags: NFCISO15693RequestFlag, cryptoSuiteIdentifier: Int, message: Data) async throws

Challenge command (0x39 command code) as defined in ISO15693-3 specification. - Parameters: - flags: Request flags. - cryptoSuiteIdentifier: 8 bits Crypto Suite Indicator as defined in ISO/IEC 29167 specification. - message: Content of the Key Update command as dictated by the Crypto Suite Indicator used in Authenticate. - Returns: A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A `NFCISO15693TagResponseErrorKey` in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification.

method · iOS 14.0+

keyUpdate

Swift declaration
@preconcurrency func keyUpdate(requestFlags flags: NFCISO15693RequestFlag, keyIdentifier: Int, message: Data, resultHandler: @escaping @Sendable (Result<(NFCISO15693ResponseFlag, Data), any Error>) -> Void)

Key update command (0x36 command code) as defined in ISO15693-3 specification. Please note that in-process reply is returned to the caller without any processing. - Parameters: - flags: Request flags. - keyIdentifier: 8 bits key identifier - message: Content of the Key Update command as dictated by the Crypto Suite Indicator used in Authenticate. - resultHandler: Completion handler called when the operation is completed. A `(NFCISO15693ResponseFlag, Data)` tuple is returned on success; data consists of Parameters and Data field per "Response Format" definition from the specification. A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A `NFCISO15693TagResponseErrorKey` in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification.

method · iOS 14.0+

keyUpdate

Swift declaration
func keyUpdate(requestFlags flags: NFCISO15693RequestFlag, keyIdentifier: Int, message: Data) async throws -> (NFCISO15693ResponseFlag, Data)

Key update command (0x36 command code) as defined in ISO15693-3 specification. Please note that in-process reply is returned to the caller without any processing. - Parameters: - flags: Request flags. - keyIdentifier: 8 bits key identifier - message: Content of the Key Update command as dictated by the Crypto Suite Indicator used in Authenticate. - Returns: A `(NFCISO15693ResponseFlag, Data)` tuple; data consists of Parameters and Data field per "Response Format" definition from the specification. A `NFCErrorDomain` error is returned when there is a communication issue with the tag. A `NFCISO15693TagResponseErrorKey` in NSError `userInfo` dictionary is returned when the tag responded to the command with an error, and the error code value is defined in ISO15693-3 specification.

Skipped declarations

No declarations were skipped in this snapshot.

All CoreNFC types →