Skip to content
This repository has been archived by the owner on Jun 23, 2024. It is now read-only.

Adding support for more tag types #40

Open
5 of 22 tasks
semlette opened this issue Apr 22, 2020 · 0 comments
Open
5 of 22 tasks

Adding support for more tag types #40

semlette opened this issue Apr 22, 2020 · 0 comments
Labels
enhancement New feature or request

Comments

@semlette
Copy link
Owner

semlette commented Apr 22, 2020

Currently nfc_in_flutter only supports tags that support the NDEF specification. There have been numerous requests for better tag support (#18, #12, #14). Having support for accessing the tag directly would also allow for retrieving the ID of the tag on iOS (#35, #7).

This issue will be a plan for implementing support for interacting directly with the tags themself.

All work will be done on the tags branch. The tags branch should be considered unstable and should not be used in production.

Features and to-do list

nfc_in_flutter.dart library

APIs for both Android and iOS

  • Add ISO15693Tag class with methods matching Core NFC's
  • Add readISO15693 function
  • Add MiFareTag class
  • Add readMiFare function

These APIs will be high level to match Core NFC's APIs

android.dart library

The android.dart library will contain classes and functions mapped to the Android NFC APIs.

  • Add NfcA support
    • Add NFCA class (rename to NFCATag)
    • Add readNFCA function
    • Stablise
  • Add NfcB support
    • Add NFCBTag class
    • Add readNFCB function
  • Add NfcV support
    • Add NFCVTag class
    • Add readNFCV function
  • Add NfcF support
    • Add NFCFTag
    • Add readNFCF function
  • Add IsoDep support
    • Add IsoDep class (rename to ISODEPTag or IsoDepTag)
    • Add readIsoDep function (possibly rename to readISODEP)
    • Stablise

Note that NfcA and IsoDep APIs are unfinished

ios.dart library

The ios.dart library will contain classes and functions mapped to the Core NFC APIs.

To-dooOooOooOoooOoooooOOOoooo


Implementation plan

  1. Finish the NfcA and IsoDep APIs in the android.dart library
  2. iOS: Add option to prefer NFCTagReaderSession in readNDEF
    • Add the IDs of the tags to the NDEF message
    • Remember to add documentation on how to enable NFCTagReaderSession
  3. To be decided

This issue may be updated at any time.

Work on this will begin shortly because I have finally figured out how to enable the NFCTagReaderSession class on iOS. This shall never be spoken about ever again.

@semlette semlette added the enhancement New feature or request label Apr 22, 2020
@semlette semlette self-assigned this Apr 22, 2020
@semlette semlette pinned this issue Apr 23, 2020
@semlette semlette removed their assignment Oct 3, 2020
@semlette semlette unpinned this issue Aug 1, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant