develop
DialogManager defined show_transfer_stats and show_disable_debugging_reminder
twice; the later definitions silently shadowed the earlier ones. The live
show_transfer_stats(self, stats, operation) accepted only two arguments, but
TransferManager passed a third (deduplicator), raising TypeError inside the Tk
after() callback so the transfer-stats window never appeared after folder
transfers. The shadowed copies were also dead: they indexed stats keys
(bytes_saved/total_files/...) that the *_with_dedup TODO stubs never produce,
so they would have KeyError'd on the real {"message": ...} payload.
- Remove the dead, shadowed copies of both methods
- Drop the unused deduplicator argument at the caller (transfer_manager)
- Annotate the surviving methods with -> None
Also align linting/type config with the existing >=3.13,<3.15 support that CI
already exercises: black now targets py313+py314, and CLAUDE.md documents
3.13/3.14. mypy stays pinned to the 3.13 floor (the oldest supported runtime).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Android File Handler (ADB)
A simple Windows GUI tool to pull folders from an Android device using ADB (Android Debug Bridge). The tool automatically downloads the latest ADB platform-tools if not present, checks for a connected device, and provides a user-friendly interface for selecting remote and local single files and folders.
Features
- Automatic ADB Download: Downloads and extracts the latest platform-tools if not found locally.
- Device Detection: Checks for a connected Android device and provides instructions if not found.
- GUI Interface: Easy-to-use interface built with Tkinter for selecting remote (Android) and local (PC) folders.
- Progress Bar: Visual feedback during file transfer.
- USB Debugging Guidance: Step-by-step instructions for enabling/disabling USB debugging on your device.
Requirements
- Windows or Linux
- Python 3.8+
- Poetry for dependency management
- (Optional) pyenv for Python version managment
Installation (Developers)
-
Clone this repository:
git clone git@github.com:JMR-dev/android_file_handler_adb.git cd android_file_handler_adb -
Install dependencies using Poetry:
poetry install
Usage
-
Activate the virtual environment:
poetry env activate -
Run the application:
poetry run python -m src.main -
Follow the on-screen instructions:
- Enter the remote folder path (e.g.,
/sdcard/DCIM) - Choose the local destination folder
- Click Start Transfer
- Enter the remote folder path (e.g.,
Troubleshooting
- ADB not found: The tool will attempt to download and extract ADB automatically.
- No device detected: Ensure your device is connected via USB and USB debugging is enabled. The app provides instructions if needed.
License
MIT License
Author
Description
A simple file handler for Android that works over Android Debug Bridge to improve speed and simplicity of use
3.5 MiB
Releases
1
Release v0.1.0
Latest
Languages
Python
98.2%
Shell
1.2%
PowerShell
0.6%