Keyple Interop Local Reader NFC Mobile Library


The Keyple Interop Local Reader NFC Mobile Library is a Kotlin Multiplatform adapter that provides an implementation of the LocalReader SPI required by the Keyple Interop JSON API Client Library, specifically designed for mobile NFC readers.

It enables non-Keyple applications to interact with the built-in NFC readers of Android and iOS devices, making it possible to perform smart card communication in compliance with the Keyple interop model. This library is optimized for mobile platforms and serves as a bridge between the application logic and the device’s native NFC capabilities, facilitating seamless integration without requiring a full Keyple stack.


Kotlin Multiplatform components

Documentation

Download

Here is a summary table describing the purpose and usage of each target module generated by this Kotlin Multiplatform library, including the root (no-suffix) module and platform-specific variants:

Artifact IDFormatPurposeMain Use Case
keyple-interop-localreader-nfcmobile-kmp-lib.jarCommon code shared across all platformsUsed by multiplatform consumers to pull platform variants
keyple-interop-localreader-nfcmobile-kmp-lib-jvm.jarNon-Android JVM applicationsUsed in backend apps, desktop apps, or CLI
keyple-interop-localreader-nfcmobile-kmp-lib-android.aarProduction Android appsIntegrated into final APK/AAB builds
keyple-interop-localreader-nfcmobile-kmp-lib-iosarm64.klibReal iOS devices (ARM64 architecture)Required for running the app on physical iPhones
keyple-interop-localreader-nfcmobile-kmp-lib-iossimulatorarm64.klibiOS Simulator on Apple Silicon Macs (ARM64)Used for development/testing on simulators on M1/M2 Macs
keyple-interop-localreader-nfcmobile-kmp-lib-iosx64.klibiOS Simulator on Intel-based Macs (x86_64)Used for development/testing on simulators on Intel Macs
iOS artifactTBDiOS applicationsIntegrated directly into final iOS apps

Key Notes:

  • The root module serves as the entry point for consumers. When you add implementation("[root-lib]"), Gradle automatically selects the correct variant (jvm, android, etc.) based on the target platform.
  • The platform-specific modules (android, jvm, etc.) contain compiled code that can be executed or packaged directly.

All deliverables are available directly from the Maven Central Repository or by using one of the project resource managers below:

implementation("org.eclipse.keyple:[ARTIFACT_ID]:0.1.6")
implementation 'org.eclipse.keyple:[ARTIFACT_ID]:0.1.6'
<dependency>
  <groupId>org.eclipse.keyple</groupId>
  <artifactId>[ARTIFACT_ID]</artifactId>
  <version>0.1.6</version>
</dependency>

–>

Previous