Bring NFC feature to React Native. Inspired by phonegap-nfc and react-native-ble-manager
- Android (API 10+)
npm i --save react-native-nfc-managerreact-native link react-native-nfc-managerLook into example/App.js as a starting point.
This library provide a default export NfcManager and a named export NdefParser, like this:
import NfcManager, {NdefParser} from 'react-native-nfc-manager'All methods in NfcManager return a Promise object and are resolved to different types of data according to individual API.
NdefParser is an utility class to parse some well-known NDEF format, currently only support RTD URI.
Init the module.
Check if the NFC is enabled.
Returned Promise resolved to a boolean value to indicate whether NFC is enabled.
Direct the user to NFC setting.
Get the NFC tag object which launches the app.
Returned Promise resolved to the NFC tag object launching the app and resolved to null if the app isn't launched by NFC tag.
Start to listen to ANY NFC tags.
Arguments
listener-function- the callback when discovering NFC tags
Examples
NfcManager.registerTagEvent(tag => {
console.log('Tag Discovered', tag);
})Stop listening to NFC tags.
Try to parse uri from a NdefMessage, return an object with an uri property.
Arguments
ndef-object- this object should be obtained from nfc tag object with this form:tag.ndefMessage[0]. (NFC tag object can be obtained bygetLaunchTagEventorregisterTagEvent)
Examples
let {uri} = NdefParser.parseUri(sampleTag.ndefMessage[0]);
console.log('parseUri: ' + uri);