This project hosts tools for working with NFC on Android. Modules:
- wrapper - wrappers for classes in the
android.nfc
package- for working with external and internal tags in parallel
- core - various helpers for NFC support
- abstract reader activities and Host Card Emulation services
- external - basic support for external NFC readers
- external-acs - support for ACS readers external NFC readers
- external-minova - support for Minova MCR external NFC readers (over network)
- external-websocket - support for interacting with a pool of external readers over websocket
- add NFC support to devices without NFC chips (i.e. emulator / Android TV / certain tablets), and/or
- programmatically interact with multiple cards/readers during testing, using fine-grained controls:
- connect/disconnect reader
- start/stop polling
- trigger tag scans even if the card is statically placed on the reader
European Union Public Licence v1.2.
The project is built with Gradle and is available on the central Maven repository.
This project includes some code from the following projects:
as well as drivers from ACS.
- For external-websocket use a JVM which bundles
smartcardio
packages
For local development (.m2)
./gradlew clean build publishToMavenLocal --info
For Maven central also add siging info.
./gradlew build publishToSonatype closeAndReleaseStagingRepositories --info --stacktrace -Psigning.gnupg.passphrase=xxx -Psigning.gnupg.keyName=yyy
See CHANGELOG.