Skip to content

A Flutter plugin for accessing the NFC features on Android and iOS.

License

Notifications You must be signed in to change notification settings

menno-rdmkr/flutter-nfc-manager

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nfc_manager

Flutter plugin for accessing the NFC features on Android and iOS.

Note: This plugin depends on NFCTagReaderSession (requires iOS 13.0 or later) and NfcAdapter#enableReaderMode (requires Android API level 19 or later).

Setup

Android Setup

iOS Setup

Usage

Handling Session

// Check availability
bool isAvailable = await NfcManager.instance.isAvailable();

// Start Session
NfcManager.instance.startSession(
  onDiscovered: (NfcTag tag) async {
    // Do something with an NfcTag instance.
  },
);

// Stop Session
NfcManager.instance.stopSession();

Handling Platform Tag

The following platform-tag-classes are available:

  • Ndef
  • FeliCa (iOS only)
  • Iso7816 (iOS only)
  • Iso15693 (iOS only)
  • MiFare (iOS only)
  • NfcA (Android only)
  • NfcB (Android only)
  • NfcF (Android only)
  • NfcV (Android only)
  • IsoDep (Android only)
  • MifareClassic (Android only)
  • MifareUtralight (Android only)
  • NdefFormatable (Android only)

Obtain an instance by calling the factory constructor from on the class. For example:

Ndef? ndef = Ndef.from(tag);

if (ndef == null) {
  print('Tag is not compatible with NDEF');
  return;
}

// Do something with an Ndef instance

Please see the API Doc for more details.

Real-World-App

See this repo which is a Real-World-App demonstrates how to use this plugin.

About

A Flutter plugin for accessing the NFC features on Android and iOS.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Dart 55.6%
  • Swift 28.6%
  • Kotlin 13.6%
  • Ruby 1.7%
  • Objective-C 0.5%