Omówienie komunikacji Near Field Communication (NFC)

Komunikacja Near Field Communication (NFC) to zestaw technologii bezprzewodowych krótkiego zasięgu, które zazwyczaj wymagają do nawiązania połączenia nie więcej niż 4 cm. NFC umożliwia wymianę niewielkich ładunków danych między tagiem NFC a urządzeniem z Androidem lub między dwoma urządzeniami z Androidem.

Złożoność tagów może być różna. Proste tagi zapewniają jedynie semantykę do odczytu i zapisu. Czasami z zastosowaniem 1 razy zaprogramowanych obszarów karta jest tylko do odczytu. Bardziej złożone tagi umożliwiają wykonywanie działań matematycznych i są wyposażone w sprzęt kryptograficzny do uwierzytelniania dostępu do sektora. Najbardziej zaawansowane tagi zawierają środowiska operacyjne, które umożliwiają wykonywanie złożonych interakcji z kodem uruchamianym w tagu. Dane przechowywane w tagu mogą być zapisywane w różnych formatach, ale wiele interfejsów API platformy Android opiera się na standardzie NFCForum o nazwie NDEF (NFC Data Exchange Format).

Urządzenia z Androidem i NFC jednocześnie obsługują trzy główne tryby działania:

  1. Tryb odczytującego/zapisywania, który umożliwia urządzeniu NFC odczytywanie i zapisywanie pasywnych tagów i naklejek NFC.
  2. Tryb P2P, który umożliwia urządzeniu NFC wymianę danych z innymi łącznikami NFC. W tym trybie działa Android Beam.
  3. Tryb emulacji karty, który pozwala samemu urządzeniu NFC pełnić funkcję karty NFC. Dostęp do emulowanej karty NFC można uzyskać za pomocą zewnętrznego czytnika NFC, np. terminala z modułem NFC w punkcie sprzedaży.
Podstawowe informacje o NFC
W tym dokumencie opisujemy, jak Android obsługuje wykryte tagi NFC oraz jak powiadamia aplikacje z odpowiednimi danymi. Opisano w nim również sposób pracy z danymi NDEF w aplikacjach oraz przegląd interfejsów API platformy, które obsługują podstawowy zestaw funkcji NFC na urządzeniach z Androidem.
Zaawansowane funkcje NFC
W tym dokumencie omawiamy interfejsy API, które umożliwiają korzystanie z różnych technologii obsługi tagów obsługiwanych przez Androida. Gdy nie pracujesz z danymi NDEF lub korzystasz z danych NDEF, których Android nie jest w pełni zrozumiały, musisz ręcznie odczytywać lub zapisywać w tagu nieprzetworzone bajty przy użyciu własnego stosu protokołów. W takich przypadkach Android umożliwia wykrywanie pewnych technologii tagów i otwieranie komunikacji z tagiem za pomocą własnego stosu protokołów.
Emulacja kart hostowana
W tym dokumencie opisujemy, jak urządzenia z Androidem mogą działać jako karty NFC bez użycia bezpiecznego elementu, co pozwala każdej aplikacji na Androida emulować kartę i komunikować się bezpośrednio z czytnikiem NFC.