La tecnologia Near Field Communication (NFC) è un insieme di tecnologie wireless a corto raggio, in genere richiede una distanza massima di 4 cm per avviare una connessione. NFC consente di condividere piccoli payload di dati tra un tag NFC e un dispositivo Android o tra due dispositivi Android.
I tag possono variare in base alla complessità. I tag semplici offrono solo la lettura e la scrittura della semantica, a volte con aree programmabili una tantum per rendere la scheda di sola lettura. I tag più complessi offrono operazioni matematiche e dispongono di hardware crittografico per autenticare l'accesso a un settore. I tag più sofisticati contengono ambienti operativi, consentendo interazioni complesse con il codice in esecuzione sul tag. I dati archiviati nel tag possono anche essere scritti in diversi formati, ma molte delle API del framework Android si basano su uno standard NFC Forum chiamato NDEF (NFC Data Exchange Format).
I dispositivi Android con NFC supportano contemporaneamente tre modalità principali di funzionamento:
- Modalità Reader/writer, che consente al dispositivo NFC di leggere e scrivere tag e adesivi NFC passivi.
- La modalità P2P, che consente al dispositivo NFC di scambiare dati con altri peer NFC; questa modalità di funzionamento è utilizzata da Android Beam.
- Modalità di emulazione schede, che consente al dispositivo NFC di agire come una scheda NFC. La carta NFC emulata è quindi accessibile da un lettore NFC esterno, ad esempio un terminale point of sale NFC.
- Informazioni di base su NFC
- In questo documento viene spiegato come Android gestisce i tag NFC rilevati e come invia una notifica alle applicazioni dei dati pertinenti per l'applicazione. Viene inoltre spiegato come utilizzare i dati NDEF nelle tue applicazioni e offre una panoramica delle API framework che supportano il set di funzionalità NFC di base di Android.
- NFC avanzata
- Questo documento esamina le API che consentono l'utilizzo delle varie tecnologie di tag supportate da Android. Se non utilizzi dati NDEF o dati NDEF che Android non è in grado di comprendere appieno, devi leggere o scrivere manualmente nel tag in byte non elaborati utilizzando il tuo stack di protocolli. In questi casi, Android fornisce assistenza per rilevare determinate tecnologie di tag e per aprire la comunicazione con il tag utilizzando il tuo stack di protocolli.
- Emulazione della carta basata sull'host
- Questo documento descrive le prestazioni dei dispositivi Android come carte NFC senza utilizzare un Secure Element, consentendo a qualsiasi applicazione Android di emulare una carta e comunicare direttamente con il lettore NFC.