Skip to content

Releases: JohnMcLear/yondoor_android

v1.1.0 — one-tap pairing via yondoor:// deep link

Choose a tag to compare

@JohnMcLear JohnMcLear released this 20 May 19:43
872ac91

Adds a custom URI scheme so pairing URIs in messaging apps (Signal, email, browser) become clickable. Tapping yondoor://pair?... from anywhere opens the Yondoor app pre-loaded with the new pairing, ready to name + save.

What's new

  • Deep-link intent filter on UnlockActivity for yondoor://pair. Android offers Yondoor in the "Open with" picker when a matching URI is tapped.
  • Auto-pre-fill of the name dialog with Reader XX-XX-XX-XX (the rid formatted as the synthetic UID).
  • onNewIntent handler so the deep link works whether the app was already open or cold-started.
  • 5 new unit tests for the name-suggestion logic.

Install

Download app-debug.apk below → adb install -r app-debug.apk (or sideload via file manager).

Pair via deep link

  1. Household admin generates the pairing URI in HA.
  2. Sends it via Signal / iMessage / encrypted email.
  3. Recipient taps the link → Android offers "Yondoor Unlock" → opens to "Name this reader" dialog with Reader XX-XX-XX-XX pre-filled.
  4. Tap OK → paired. Tap phone to reader → unlock.

Requires firmware v1.1.0+ for the household-broadcast pairing flow.

v1.0.0 — first public release

Choose a tag to compare

@JohnMcLear JohnMcLear released this 20 May 08:29

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.