v1.0.0 — first public release
First public release. Sideload-only Android app that turns a phone into a Yondoor NFC unlock token.
Install
Download app-debug.apk below and sideload:
adb install -r app-debug.apk
Or copy the APK to the phone and open it with a file manager (you may need to enable "install from unknown sources" for the file manager).
Pair
Open the app, tap + Pair new reader, paste the yondoor://pair?... URI from your Yondoor reader. See the companion firmware repo for how to provision a reader.
What's included
- Multi-reader pairing — one phone can be a credential for multiple Yondoor doors.
- HMAC-SHA256 challenge-response over the proprietary AID
F0796F6E646F6F72. - Reader-confirmed unlock animation (gold key) — only fires when the reader has accepted the HMAC, never on the phone's own optimistic guess.
- EncryptedSharedPreferences with Android Keystore-backed master key.
- 26 unit tests covering APDU layout, HMAC vector, URI parser, multi-secret handling.
Known limitations
See the README for the full list. Headline: Google Wallet preempts the unlock UI on a locked tap — unlock the phone first, then tap.
Requirements
- Android 6.0+ (API 23+)
- NFC + HCE hardware (any phone made in the last ~10 years qualifies)
Build from source
./gradlew assembleDebug
Needs JDK 17 + Android SDK platform-34 + build-tools-34. See README for full setup.