NFC mit Android im Test

Was kann der große Bruder von RFID?

Smartphones und mobile Devices werden heutzutage immer öfter ein Ersatz für den herkömmlichen PC. Dieser Trend wird auch als „Ubiquitous Computing“ bezeichnet, also das Konzept, Rechenleistung immer und überall bereitzustellen. Ein wichtiger Bestandteil dieses Trends ist NFC (Near Field Communication).

NFC ermöglicht die Kommunikation zwischen zwei Geräten/Tags innerhalb weniger Zentimeter. Mobiles Bezahlen ist derzeit wohl das prominenteste Einsatzgebiet. Ein weiterer Anwendungsbereich sind sogenannte NFC-tags. Diese können bis zu 1024 Bytes speichern und sind auch beschreibbar, wodurch sie entscheidende Vorteile gegenüber RFID-tags bringen, die nur einen Identifier (eine Zahl) speichern und meist nicht beschreibbar sind. NFC-tags ermöglichen unter anderem, beim Kontakt mit einem Gerät (z.B. einem Smartphone), einen bestimmten Task auszulösen. So kann zum Beispiel ein im Auto platzierter NFC-tag das Smartphone-Bluetooth aktivieren und sich mit einer Freisprecheinrichtung verbinden lassen, sobald man einsteigt und der Tag gescannt wird.

Um das Potential dieser Technologie auch im Büroalltag zu nutzen, haben wir eine Android-App entwickelt, die mit NFC arbeitet, um unsere hauseigene Web-Zeiterfassung solTime zu erweitern. So ist es möglich, mit einem NFC-tag, der an der Tür angebracht ist, den Start und das Ende einer eingestellten Tätigkeit mit einer kurzen Bewegung in Richtung des Tags zu erfassen.

Die einfachste Variante, mit der auch Nicht-Entwickler NFC-tags verwenden können, sind Apps von Drittherstellern (z.B. NFC Tools), die tags beschreiben können und bestimmte Tasks (z.B. das Starten einer App) ausführen, sobald ein Tag gescannt wird. Voraussetzung dafür ist nur ein NFC-fähiges Android-Smartphone und eigene NFC-tags. So ein Tag kann zu Preisen ab € 0,29 gekauft werden. Die Einstiegshürde ist also so niedrig wie möglich.

Will man als Android-EntwicklerIn die selbst programmierte App unabhängig von anderen Apps machen, ist das auch kein Problem. Android bietet bereits sehr gute Schnittstellen, die sowohl das Beschreiben als auch das Auslesen von tags ermöglichen. Außerdem ist es machbar, dass nur bei tags mit einem bestimmten Inhalt die eigene App benachrichtigt wird und dann bestimmte Aktionen ausgeführt werden können. Mit dieser Möglichkeit kann dann beispielsweise das Buchen der Zeiten in der solTime-App angestoßen werden.

Code-Beispiel aus unserer solTime-App:

IntentFilter ndef = new IntentFilter(NfcAdapter.ACTION_NDEF_DISCOVERED);
ndef.addDataScheme("vnd.android.nfc");
ndef.addDataAuthority("ext", null);
ndef.addDataPath("/at.solvistas.soltime:start-end-activity", PatternMatcher.PATTERN_PREFIX);

Hat man ein iPhone, kann man die vielen Einsatzmöglichkeiten von NFC-tags leider noch nicht genießen, denn Apple hat zwar dem iPhone 6 und dem iPhone 6 Plus einen NFC-Chip spendiert, doch der ist noch dem hauseigenen Bezahldienst Apple Pay vorbehalten. Dritt-Entwickler können also noch nicht auf eine NFC-API zugreifen. Ob diese in einer späteren Version von iOS kommt, ist noch unklar, und darüber kann nur spekuliert werden. Über mobile Webseiten kann derzeit auch nur sehr begrenzt auf NFC zugegriffen werden. Das W3C arbeitet zwar an einer Spezifikation, doch die ist noch im Entwicklungsstadium und bis die Browserhersteller die API unterstützen wird es auch noch eine Weile dauern.

Fazit

NFC und andere Technologien des “Ubiquitous Computing” fließen immer mehr in unseren Alltag ein und können uns das Leben durchaus erleichtern. Es müssen nicht mehr viele Klicks am Smartphone ausgeführt werden, sondern ein Hinhalten des Smartphones reicht aus, um dieselbe Funktionalität auszulösen. Für Unternehmen wird es immer wichtiger, auf diesen Zug aufzuspringen, da auch immer mehr EndnutzerInnen diese Technologien verwenden.

Autor: Markus Hiesmair