TechnologiesDevice, Sensors & Hardware

CoreNFC

iOSmacOStvOSwatchOSvisionOS

CoreNFC reads and writes Near Field Communication (NFC) tags on iOS through reader sessions, exposing connected tag objects and NDEF data to your app. You start an NFCNDEFReaderSession or NFCTagReaderSession, respond to events through an NFCNDEFReaderSessionDelegate, and work with the tags it discovers, including NFCNDEFTag, NFCISO15693Tag, NFCISO7816Tag, NFCFeliCaTag, and NFCMiFareTag. NDEF content is modeled by NFCNDEFMessage and NFCNDEFPayload, and you can issue protocol-specific commands using types such as NFCISO7816APDU and NFCTagCommandConfiguration, handling failures reported through NFCReaderError.

Reader Sessions 7

Sessions that scan for and connect to NFC tags and report discovery events.

  • Cl
    NFCReaderSessioniOS 11.0+
    @class NFCReaderSession
  • Pr
    NFCReaderSessionProtocoliOS 11.0+
    @protocol NFCReaderSession
  • Cl
    NFCTagReaderSessioniOS 13.0+
    @class NFCTagReaderSession
  • Cl
    NFCNDEFReaderSessioniOS 11.0+
    @class NFCNDEFReaderSession
  • Cl
    NFCVASReaderSessioniOS 13.0+
    @class NFCVASReaderSession
  • Cl
    NFCPaymentTagReaderSessioniOS 26.0+
    @class NFCPaymentTagReaderSession
  • Cl
    CardSession
    ISO7816 card emulation session.

Session Delegates 4

Protocols your app implements to respond to reader session lifecycle and tag-discovery events.

  • Pr
    NFCTagReaderSessionDelegate
    Tag reader session delegate
  • Pr
    NFCNDEFReaderSessionDelegateiOS 11.0+
    @protocol NFCNDEFReaderSessionDelegate
  • Pr
    NFCVASReaderSessionDelegateiOS 13.0+
    @protocol NFCVASReaderSessionDelegate
  • Pr
    NFCWindowSceneDelegate
    Delegate to notify your `UIWindowScene` that a NFC event has occurred.

Connected Tags 7

Tag types representing the NFC technologies discovered during a reader session.

  • En
    NFCTag
    A NFC tag object. The NFCTagReaderSession returns an instance of this type when a tag is detected.
  • Pr
    NFCNDEFTagiOS 13.0+
    @protocol NFCNDEFTag
  • Pr
    NFCISO15693TagiOS 11.0+
    @protocol NFCISO15693Tag
  • Pr
    NFCISO7816TagiOS 13.0+
    @protocol NFCISO7816Tag
  • Pr
    NFCFeliCaTagiOS 13.0+
    @protocol NFCFeliCaTag
  • Pr
    NFCMiFareTagiOS 13.0+
    @protocol NFCMiFareTag
  • En
    NFCMiFareFamilyiOS 13.0+
    @enum NFCMiFareFamily

NDEF Messages 4

Types that model the NDEF data read from and written to tags.

  • Cl
    NFCNDEFMessageiOS 11.0+
    @class NFCNDEFMessage
  • Cl
    NFCNDEFPayloadiOS 11.0+
    @class NFCNDEFPayload
  • En
    NFCNDEFStatusiOS 13.0+
    @enum NFCNDEFStatus
  • En
    NFCTypeNameFormatiOS 11.0+
    @discussion Type Name Format value defined by NFC Data Exchange Format (NDEF) Technical Specification

ISO 7816 Commands 2

Types for issuing application protocol data units to ISO 7816 smart-card tags.

  • Cl
    NFCISO7816APDUiOS 13.0+
    @class NFCISO7816APDU
  • St
    NFCISO7816ResponseAPDU
    Response Application Protocol Data Unit

ISO 15693 Commands 6

Configuration and data types for communicating with ISO 15693 vicinity tags.

  • Cl
    NFCISO15693CustomCommandConfigurationiOS 11.0+
    @class NFCISO15693CustomCommandConfiguration
  • Cl
    NFCISO15693ReadMultipleBlocksConfigurationiOS 11.0+
    @class NFCISO15693ReadMultipleBlocksConfiguration
  • St
    NFCISO15693RequestFlagiOS 11.0+
    Flags that specify request options for commands sent to an ISO 15693 tag.
  • St
    NFCISO15693ResponseFlagiOS 14.0+
    Flags that describe the options present in a response from an ISO 15693 tag.
  • St
    NFCISO15693MultipleBlockSecurityStatus
    Response of Get Multiple Block Security Status command.
  • St
    NFCISO15693SystemInfo
    Response of Get System Info command

FeliCa Commands 7

Request codes, response structures, and status values for FeliCa tag communication.

  • En
    NFCFeliCaPollingRequestCodeiOS 13.0+
    @discussion Request code parameter for the polling command
  • En
    NFCFeliCaPollingTimeSlotiOS 13.0+
    @discussion Time slot parameter for the polling command
  • En
    NFCFeliCaEncryptionIdiOS 13.0+
    @discussion Encryption Identifier parameter in response of Request Service V2
  • St
    NFCFeliCaPollingResponse
    Response from Polling command.
  • St
    NFCFeliCaRequestSpecificationVersionResponse
    Response from Request Service V2 command.
  • St
    NFCFeliCaRequsetServiceV2Response
    Response from Request Service V2 command.
  • St
    NFCFeliCaStatusFlag
    Response status flags

Value-Added Services 2

Types that configure and return results for Apple value-added service passes.

  • Cl
    NFCVASCommandConfigurationiOS 13.0+
    @class NFCVASCommandConfiguration
  • Cl
    NFCVASResponseiOS 13.0+
    @class NFCVASResponse

Command Configuration 1

Base configuration for protocol-specific tag commands.

  • Cl
    NFCTagCommandConfigurationiOS 11.0+
    @interface NFCTagCommandConfiguration

Background Reading 2

Types that support background tag reading and presentment-intent coordination.

  • Cl
    NFCPresentmentIntentAssertion
    A valid assertion object will suppress presentment intent signaling to the system default NFC contactless app due to user button gesture or presence of an external NFC reader RF field.
  • En
    NFCWindowSceneEvent
    A NFC event send to a `UIScene` or `UIWindowScene`.

Errors 1

Error type that reports failures encountered during reader sessions and tag commands.

  • St
    NFCReaderErroriOS 11.0+
    An error that reports a failure encountered during a reader session or tag command.

Type Aliases 6

  • Ty
    RequestFlag
  • Ty
    PollingRequestCode
  • Ty
    PollingTimeSlot
  • Ty
    EncryptionId
  • Ty
    VASMode
  • Ty
    VASErrorCode

Extends 2

NSUserActivityUIScene
← Device, Sensors & Hardware