NFC Services Overview

The NFC (Near Field Communication) Services collection contains components that provide NFC-related services for platform and application developers.

Required background

Before using this collection, you must have a good knowledge of NFC forum specifications available at http://www.nfc-forum.org/specs/.

Also refer to Introduction to NFC on Nokia Developer to understand the NFC technology in general and the specifics that are supported on Nokia devices.

Key concepts and terms

Connectionless Transport

An unacknowledged data transmission service with minimal protocol complexity.

Connection-oriented Transport

A data transmission service with sequenced and guaranteed delivery of service data units.

Data link connection

A unique combination of source and destination service access point address used for numbered information transfer.

Logical Link Control (LLC)

It forms a part of the data link layer that supports the logical link control functions of one or more logical links. It includes interpreting message packets (PDUs) received on a network and generating appropriate response and acknowledgement data (PDUs).

Logical Link Control Protocol (LLCP)

It provides a reliable communication channel between the local and the remote LLC that provides the transport for all data link connections and logical data links.

NFC Data Exchange Format (NDEF)

It defines a message encapsulation format to exchange information, for example, between an NFC device and another NFC device or an NFC tag.

NFC Tag

An NFC tag is a small object, such as an adhesive sticker, that can be attached to or incorporated into a product. It can store data in NDEF format.

Architecture

The following figure illustrates the NFC Services architecture. It works on client-server architecture and has four main components - NFC applications, NFC client, NFC server and NFC libraries:

Figure: NFC Services Architecture

NFC Applications

It provides NFC UI application and enabler plug-ins for file sharing. The NFC UI application provides tag writing functionality such as writing data from applications to NFC tags and NFC settings UI.

NFC Client

It implements the public APIs for third party NFC developers. The public APIs enable tag reading and writing, peer-to-peer connections, and a plug-in interface for handling incoming data over NFC.

NFC Libraries

It provides NFC utility libraries that are commonly required by NFC application and NFC Server for message parsing and handling, displaying global UI notes, and handling tactile feedback (for example, Vibra).

NFC Server

It implements the main process that executes NFC-related functions. It performs functions such as, LLCP connection handling, processing of received NDEF messages, and handling and storing of NFC-related settings.

API summary

The following is a list of the key APIs provided by NFC Services:

API

Description

NFC Discovery API

Provides methods to subscribe and discover tags and NDEF messages.

NFC Tag Extension API

Provides implementation and access (read/write) methods for different types of NFC targets.

NDEF API

Provides methods for handling NDEF messages and accessing NDEF messages on tags.

NFC Peer-to-Peer API

Provides LLCP API for peer-to-peer communication between NFC devices.

NFC Content Handler API

Provides ECOM plug-in interface for subscribing and receiving NDEF messages.

Using NFC Services

The following are the key uses of NFC Services collection:
  • Providing UI for NFC tag operations.

  • Handling application-specific content received over NFC and LLCP for NFC peer-to-peer connections.

  • Providing UI and high-level functionality for NFC-related settings, that is, activating/deactivating NFC polling.