Search code examples
.netwindows-phone-8cross-platformnfcndef

Is there a NFC protocol which enables writing a modal dialog into NFC tag?


More than half year ago I read this great article Use NFC tags with Windows Phone 8. I had no problems with writing tag with LaunchApp protocol or just writing simple String or URI. I don't have WP8 phone anymore to try other things with NFC tags(but I'll buy one if this what I am asking is possible).

I would like to create business card with NFC chip for myself. When somebody touches the NFC tag I would like to modal dialog to popup with an image and 2 links to select from(one to my linkedin profile, second to my company's website), not just only one link which user can accept or decline?

Illustration:

enter image description here

Question: Is it possible to acomplish this with current NFC tags so WP8/Android phone user will have this dialog displayed after connecting with NFC tag(or at least something similar)?


Solution

  • NFC tags are used to store data and type information only. The interpretation of that data (according to the type information) and the presentation on screen is handled by the receiving devices (or apps running on those devices).

    So the simple answer is no, there is no standardized way to achieve this.

    However, there are some alternatives that could come close to what you want:

    • The vCard file format is handled by the standard configuration of many devices (particularly WP8 and (most?) Androids) without the need for an additional app.

      You could create an NFC tag containing a vCard by using a MIME type text/vcard record. A vCard may contain both, a linked image (PHOTO) and URLs. However, the user experience (particularly the sequence of actions when scanning the tag) and the presentation will vary between devices.

    • URI records are handled by the standard configuration of pretty much all NFC smart phones. You could use a URI record on the NFC tag that points to a web page containing the information and presentation that you want.

    • You could create your own custom record type and create an app that interprets and presents the data according to your needs. This approach would require an app for each supported platform though (so not really ).