LocalSend Kotlin
- Unsupported system languages now fall back to English.
- Completed localization of transfer status, notifications, discovery errors, history text, verification accessibility labels, and dialog buttons.
- Preserved Android 5.0 compatibility constraints for automatic AndroidX Core updates.
Implemented features:
- LAN device discovery using LocalSend v2 UDP multicast, with an HTTPS scanning fallback and selectable network interfaces.
- Read-only LocalSend v2 device information endpoint (/api/localsend/v2/info), including the device fingerprint.
- Sending and receiving files, folders, media, text, and clipboard content.
- Multi-file queues with progress, cancellation, configurable receive behavior, and history.
- HTTPS, certificate-fingerprint identity verification, optional PIN authentication, and SHA-256 checksums.
- System Default, Simplified Chinese, and English interfaces, with English as the fallback for unsupported system languages, plus theme colors, dark mode, device and favorite management, and network and transfer settings.
- Foreground-service transfers with lock-screen support, notifications, and an optional keep-screen-awake mode.
- Android Quick Settings tile for toggling the background transfer service on Android 7.0 (API 24) and later.
- Android system share target for single files, multiple files, and text content.
Compatibility:
- Android 5.0 (API 21) and later.
- Both devices must be connected to the same local network.
- The client advertises protocol version 2.0 and implements the main LocalSend v2 discovery and upload workflows; complete protocol conformance has not been verified. The browser download API is not implemented (download: false).
- Guest networks, AP/client isolation, multicast filtering, or vendor firewalls may prevent discovery or the TCP connection.
Storage:
- Android 10 and later uses MediaStore to save files to the public Downloads directory by default.
- Android 5.0 through Android 9 uses the Download/LocalSend Kotlin directory by default and requires legacy storage permission.
Current limitations include a less polished transfer queue interface, no browser-link receiving, no multi-threaded transfers, no large-file performance optimizations, and no resumable transfers. Android 4.x is not supported.
This is an Alpha project suitable for early-user testing. When reporting an issue, include the Android version, device model, both client versions, and reproducible steps.
- Author: mouse233
- License: Apache License 2.0
- Issue Tracker
- Source Code
- Changelog
- Build Metadata
- Reproducibility Status
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-
This version requires Android 5.0 or newer.
It is built and signed by the original developer, and guaranteed to correspond to this source tarball.
Download APK 4.7 MiB PGP Signature | Build Log
-
This version requires Android 5.0 or newer.
It is built and signed by the original developer, and guaranteed to correspond to this source tarball.
Download APK 4.6 MiB PGP Signature | Build Log


