v5.87.46
-
Haven can now pair a computer for wireless adb debugging on its own. It finds the pairing port and asks for the six digits in a notification. This keeps the system's pairing dialog on screen while you read them (#575).
-
Pairing a computer over wireless debugging no longer means hunting for a port (#575). Android advertises its pairing listener only while the pairing dialog is open. It uses a fresh port every time. This is why a port written down once never works twice. Haven now discovers it live over mDNS while it opens the dialog for you. It asks for the six digits in a notification reply field rather than in a window of its own.
That reply field matters more than it sounds. The first version of this drew an overlay over the pairing dialog. That approach cannot work. Android's Settings windows set an anti-tapjacking flag that hides every third-party overlay while they are in front. The overlay sat in the window list the whole time and was simply never drawn. Hiding it is precisely what the flag exists to do. This means there was no workaround worth looking for. A notification reply field is drawn by the system instead. The flag does not apply to it. It needs no "display over other apps" permission. It arrives at the top of the screen above the dialog without taking focus away from it.
What this does not do yet: Haven hands the code to the agent, which runs the pairing command from the computer. Completing the pairing on the device itself needs a key exchange Haven has no implementation of. That is a separate piece of work.
🧭 The overlay design was ruled out by a single command, and that command should have been the first one run. Establishing that a permission can be granted is not the same as establishing that the platform permits the thing the permission enables. The first question was asked for days. The second took one line and ended the design immediately.
Which APK?
haven-<version>-<abi>-release.apk — the full app, and what F-Droid
carries. If in doubt, take this one.
haven-<version>-<abi>-terminal-release.apk — the same app with the
desktop and media parts left out, for people who only use Haven for SSH,
terminals, files and storage. Less than half the size on arm64. It drops
RDP and SPICE remote desktop, the native Wayland desktop, and ffmpeg — so
no media conversion, and no video previews or streaming in the file
browser. VNC is kept, so a Linux desktop running inside Haven's guest
still works.
Both are signed with the same key and carry the same version number, so
you can install either over the other without losing connections, keys or
your Linux guest. The shared version number does mean an updater will not
offer to move you between them — switching is a deliberate download.
<abi> is your device's CPU: arm64 for essentially every modern phone,
armv7 for older 32-bit devices, x64 for emulators.
Full Changelog: v5.87.45...v5.87.46