Skip to content

Android v2.0.1 — pairing, the icon, and the address field

Choose a tag to compare

@EntangledQuantum EntangledQuantum released this 21 Oct 16:23
· 17 commits to master since this release

A patch for four things 2.0.0 got wrong, three of which could stop you connecting at all.

If you are on 2.0.0, this installs straight over it — same signing key, no uninstall needed.
If you are on 1.4.0 or earlier, uninstall first: the signing key changed at 2.0.0. Nothing is lost, since Life OS keeps everything on your own server.

Fixed

The address field ate your path. Typing https://host/lifeos produced https://host:8787 — the gateway prefix dropped, and port 8787 forced onto an address answering on 443. If you reach Life OS through a tunnel or behind a path prefix, 2.0.0 simply could not connect. A bare host like 192.168.1.4 still gets http and 8787 filled in; an address you type a scheme on is now taken exactly as written.

Scanning the QR from your camera does something again. The server mints lifeos://pair?… and the app only registered lifeos://connect, so the link matched nothing — Google Lens and the camera app offered no way to open Life OS. Both are registered now, and the app claims the code on a cold start, which is the normal case since the link is why it is opening.

The QR pointed somewhere unreachable. Server side: the pairing link used whichever private address the OS happened to list first. On a machine with Hyper-V, WSL or Docker installed that is a virtual switch — 172.x — which no phone can reach, so pairing failed with "can't reach Life OS". Addresses are now ranked so a real network adapter wins.

The launcher icon was a generated placeholder. The real artwork is back, as a proper adaptive icon with a monochrome layer for Android 13+ themed icons.

Changed

There is no QR scanner in the app, and that is deliberate. 2.0.0 shipped a button announcing that scanning was unavailable. The fix is the sentence, not a scanner: your phone already scans QR codes, and the deep link above means doing so opens Life OS directly. Briefly this release bundled CameraX and an ML Kit model to re-implement it — 24 MB and a camera permission to duplicate what the camera app does. Removed. The APK is 16.4 MB instead of 40 MB, and no longer asks for the camera.

Also in here: navigation moves rather than teleporting between tabs, screens open with shared-axis motion instead of a cross-fade, and presses show a real ripple — Material 3 1.3 stopped providing one by default, so every tap in 2.0.0 was drawing Compose's debug indication, which on a near-black theme made things look like they were vanishing rather than responding.


Requires Android 8.0 (API 26) or newer. Built against SDK 35.

life-os-2.0.1.apk · SHA-256 3768561989186a20405202e422438046a6098d544ba8fa854db00d49f67f5d95

🤖 Generated with Claude Code