New in version 5.24.19
v5.24.19: actual fix for VNC over SSH tunnel + VNC username field (#104)
Nesos-ita followed up on v5.24.18 noting VNC-through-SSH still didn't
connect. They were right — the v5.24.14 "localhost → 127.0.0.1" change
fixed a different code path (pure VNC connect), not the one their
Haven actually uses (saved-on-SSH-profile VNC). Their netcat test
confirmed: Haven was closing the TCP socket immediately without even
reading the RFB protocol version.
Root cause: `DesktopViewModel.addVncSession` set
Haven is an open-source SSH, VNC, RDP, and SFTP client for Android with a native Wayland desktop and cloud storage.
Terminal:
- Full VT100/xterm emulator with Unicode, multiple tabs, and 6 color schemes
- Session persistence via tmux, zellij, screen, or byobu
- Mouse mode for TUI apps (vim, htop, mc)
- Configurable keyboard toolbar with Esc, Ctrl, Alt, arrows, function keys, and custom macros
- Text selection with word expansion, copy, and clickable URL detection
- Voice input and autocomplete mode
- Mosh and Eternal Terminal for roaming and persistent connections
Native Wayland Desktop:
- GPU-accelerated labwc compositor running directly on your device
- Waybar panel, fuzzel app launcher, thunar file manager, mousepad editor
- Starter Pack addon with Firefox, calculator, image viewer
- XWayland for X11 app compatibility
- Multi-desktop management — run multiple desktops simultaneously
- No root required (PRoot with Alpine Linux)
VNC Remote Desktop:
- VNC viewer with pinch-to-zoom, pan, and fullscreen mode
- SSH tunnel support for encrypted connections
- Touch-to-click with drag gesture support
RDP Remote Desktop:
- Connect to Windows Remote Desktop, xrdp, and GNOME Remote Desktop
- Pinch-to-zoom, keyboard with scancode mapping
- SSH tunnel with auto-connect through saved profiles
Cloud Storage:
- 60+ providers via rclone — Google Drive, Dropbox, OneDrive, S3, and more
- OAuth authentication with browser flow
- Folder sync with filters, bandwidth limits, and dry-run preview
- Media streaming to VLC via local HTTP server
- DLNA server for smart TVs and Chromecast
File Transfer:
- SFTP browser with upload, download, rename, delete, and folder transfer
- SMB/Windows file share browsing with optional SSH tunnel
- Cross-filesystem copy between any backends
Networking:
- SSH with auto-reconnect, port forwarding, and ProxyJump multi-hop
- Tailscale peer auto-discovery
- Reticulum mesh network support via rnsh
- Network discovery for SSH hosts on local network
Security:
- SSH key generation (Ed25519, RSA, ECDSA) with encrypted storage
- FIDO2 hardware key support (ed25519-sk, ecdsa-sk) via NFC or USB
- Biometric app lock with configurable timeout
- Connection audit log
- No ads, no tracking, no data collection
Haven is free and open source (AGPLv3).
Donate
Versions
Although APK downloads are available below to give you the choice, you should be aware that by installing that way you will not receive update notifications and it's a less secure way to download. We recommend that you install the F-Droid client and use that.
Download F-Droid
-
arm64-v8a
This version requires Android 8.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Permissions
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
allow Wi-Fi Multicast reception
Allows the app to receive packets sent to all devices on a Wi-Fi network using multicast addresses, not just your phone. It uses more power than the non-multicast mode.
-
run foreground service
Allows the app to make use of foreground services.
-
run foreground service with the type "dataSync"
Allows the app to make use of foreground services with the type "dataSync"
-
have full network access
Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
-
android.permission.MANAGE_EXTERNAL_STORAGE
-
control Near Field Communication
Allows the app to communicate with Near Field Communication (NFC) tags, cards, and readers.
-
show notifications
Allows the app to show notifications
-
read the contents of your shared storage
Allows the app to read the contents of your shared storage.
-
ask to ignore battery optimizations
Allows an app to ask for permission to ignore battery optimizations for that app.
-
request install packages
Allows an application to request installation of packages.
-
use biometric hardware
Allows the app to use biometric hardware for authentication
-
use fingerprint hardware
Allows the app to use fingerprint hardware for authentication
-
prevent phone from sleeping
Allows the app to prevent the phone from going to sleep.
-
moe.shizuku.manager.permission.API_V23
-
sh.haven.app.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
Download APK
91 MiB
PGP Signature
|
Build Log
New in version 5.24.12
v5.24.12: resumable paste — survives connection drops and app restarts
Paste is now persistent. Every leaf file in a copy/paste is recorded to
a queue table before the transfer starts, and each file's progress
cursor is written back to disk as bytes flow. When something
interrupts the transfer — WiFi drop, SFTP server bouncing, the app
being killed, the phone rebooting — the SFTP tab comes back up with
a banner at the top showing how many files are still pending:
Unfinished paste
46 files
-
arm64-v8a
This version requires Android 8.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Permissions
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
allow Wi-Fi Multicast reception
Allows the app to receive packets sent to all devices on a Wi-Fi network using multicast addresses, not just your phone. It uses more power than the non-multicast mode.
-
run foreground service
Allows the app to make use of foreground services.
-
run foreground service with the type "dataSync"
Allows the app to make use of foreground services with the type "dataSync"
-
have full network access
Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
-
android.permission.MANAGE_EXTERNAL_STORAGE
-
control Near Field Communication
Allows the app to communicate with Near Field Communication (NFC) tags, cards, and readers.
-
show notifications
Allows the app to show notifications
-
read the contents of your shared storage
Allows the app to read the contents of your shared storage.
-
ask to ignore battery optimizations
Allows an app to ask for permission to ignore battery optimizations for that app.
-
request install packages
Allows an application to request installation of packages.
-
use biometric hardware
Allows the app to use biometric hardware for authentication
-
use fingerprint hardware
Allows the app to use fingerprint hardware for authentication
-
prevent phone from sleeping
Allows the app to prevent the phone from going to sleep.
-
moe.shizuku.manager.permission.API_V23
-
sh.haven.app.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
Download APK
91 MiB
PGP Signature
|
Build Log
-
x86_64
This version requires Android 8.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Permissions
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
run foreground service
Allows the app to make use of foreground services.
-
run foreground service with the type "dataSync"
Allows the app to make use of foreground services with the type "dataSync"
-
have full network access
Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
-
control Near Field Communication
Allows the app to communicate with Near Field Communication (NFC) tags, cards, and readers.
-
show notifications
Allows the app to show notifications
-
use biometric hardware
Allows the app to use biometric hardware for authentication
-
use fingerprint hardware
Allows the app to use fingerprint hardware for authentication
-
sh.haven.app.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
Download APK
21 MiB
PGP Signature
|
Build Log