Here you go β a clean, professional English README for your project, suitable for GitHub π (Structured, polished, and fully aligned with what your tool actually does.)
A modern and fast GUI tool for transferring files between Android β Linux using ADB. Built with GTK4 + libadwaita, featuring real progress tracking, speed measurement, and full error logging.
This tool uses a tar + pv pipeline to achieve maximum transfer speed without compression.
-
π Two-way transfer modes
- Pull: Phone β PC
- Push: PC β Phone
-
β‘ High-speed transfer Uses
tarstreaming β no compression β for optimal throughput. -
π Real progress bar Progress is based on
pv -noutput, giving accurate percent completion. -
π Live Speedometer Shows real-time transfer speed (B/s, KB/s, MB/s).
-
π§ͺ Full logging All internal operations are logged to the terminal (debug, error, info).
-
π Error capturing & toast notifications Any adb/tar errors are displayed inside the UI.
-
ποΈ Automatic remote directory handling Always works inside:
/sdcard/Transfer
Make sure you have the following installed:
- Python 3.8+
- GTK4
- libadwaita
- PyGObject (
python3-gi) - ADB (Android Debug Bridge)
- tar
- pv
Example (Fedora):
sudo dnf install gtk4 libadwaita python3-gobject pv adbExample (Ubuntu 24.04+):
sudo apt install gir1.2-gtk-4.0 gir1.2-adw-1 python3-gi pv adbClone the repository:
git clhttps://github.com/AsmrCodeZ-YT/ADB.git
cd adb-transfer-toolRun the app:
python3 main.py| Mode | Source β Target |
|---|---|
| Pull | /sdcard/Transfer β Local folder |
| Push | Local folder β /sdcard/Transfer |
The directory is created automatically on the device if missing.
adb exec-out "cd /sdcard && tar -c -f - Transfer" \
| pv -n -s <remote_size> \
| tar -xf - -C <local_path>tar -cf - -C <local_path> . \
| pv -n -s <local_size> \
| adb shell "tar -xf - -C /sdcard/Transfer"This gives:
- No compression overhead
- Maximum ADB throughput
- Accurate progress measurement
-
Ensure USB debugging is enabled
-
Run:
adb devices
-
Make sure youβve accepted the RSA fingerprint
pvortarnot installed- ADB unauthorized
- Permission denied on
/sdcard/Transfer
- USB 2.0 cable
- Bad-quality cable
- Using USB hubs
MIT License β free to use, modify, and distribute.
Pull requests and improvements are welcome! If you have ideas for features (e.g., file preview, selective transfers), feel free to create an issue.
If you'd like, I can also generate: β A more detailed wiki β Animated GIF demo β Icons/appstream metadata for Linux packaging β Flatpak manifest
Just tell me!
