DEV Community

Cover image for I Built a Mac App That Makes Android File Sync Feel Like Magic (No More MTP Hell)
hiyoyo
hiyoyo

Posted on

I Built a Mac App That Makes Android File Sync Feel Like Magic (No More MTP Hell)

description: Hiyoko AutoSync uses ADB + Rust/Tauri to give you zero-touch, blazing-fast file sync between your Android and Mac. Here's why I built it and how it works under the hood.

If you've ever plugged your Android into a Mac and waited... and waited... for MTP to do literally anything — this post is for you.

I've spent way too many hours staring at a progress bar reading "Copying 1 of 847 files" while my Mac and phone had a slow, painful conversation through the world's worst protocol. So I built something to fix it.

The Problem with MTP

MTP (Media Transfer Protocol) is the default way Android and Mac communicate over USB. It works. Technically. But:

  • Speeds cap out around 3–5 MB/s in practice, even on USB 3
  • Connections are flaky and drop mid-transfer
  • You have to manually tap "File Transfer Mode" on your phone every. single. time.
  • There's zero automation — you have to babysit every sync

For me, the daily ritual looked like this:

Plug in phone → tap "File Transfer" on Android → open sync app on Mac → manually start sync → wait

Multiply that by every day, for years. I got fed up and built my way out.

The Solution: ADB Instead of MTP

ADB (Android Debug Bridge) ships with the Android SDK and is designed for development tooling. But it's also a dramatically superior file transfer protocol that almost no one uses for everyday sync.

With ADB you get rock-solid connections, full scriptability, and speeds up to 45 MB/s on USB 3.x — roughly 10x what MTP delivers in practice.

The one-time cost: enabling Developer Mode and USB Debugging on your Android. For anyone technical enough to care about fast, reliable sync, that's a 30-second setup you do once and forget.

What I Built: Hiyoko AutoSync

Hiyoko AutoSync is a macOS menu bar app that wraps ADB in a zero-touch experience. Here's the full flow after the one-time setup:

  1. Plug in your Android via USB
  2. HiyokoAutoSync detects the device and auto-switches USB mode to ADB
  3. Sync starts instantly — zero taps on your phone
  4. Next time, it connects over Wi-Fi. You may never need the cable again.

That's it. The entire manual ritual is gone.

Under the Hood

This is the part I actually want to talk about.

Tauri + Rust (not Electron)

The app is built with Tauri and Rust for the backend. I made this call specifically to avoid Electron bloat — a Mac menu bar app that eats 300MB of RAM to wrap a web UI is not a menu bar app, it's a punishment.

Tauri gives a native feel with a tiny binary footprint. Rust gives me the performance headroom to do things like...

4-Parallel ADB Engine (Tokio)

Standard ADB transfers one file at a time. Hiyoko AutoSync uses Tokio (Rust's async runtime) to run 4 parallel ADB streams simultaneously.

The result: moving gigabytes of 4K video or thousands of RAW photos takes seconds instead of minutes. Measured throughput hits 45 MB/s+ on USB 3.x connections.

Bundled ADB — Zero Setup

ADB is bundled inside the app. Users don't need to install Android SDK, add things to $PATH, or touch a terminal. It just works out of the box.

Wi-Fi Auto-Sync

Set up once over USB, and the app handles pairing your device to your local network. From then on, sync triggers automatically whenever your phone and Mac are on the same Wi-Fi — no cable required.

Safety Net: HiyokoTrash

Overwritten or deleted files during sync are moved to a HiyokoTrash folder on both your Mac and Android instead of being permanently deleted. You can always recover anything that got swept up in a sync.

Bonus Pro Tools

A few extra utilities I added because I needed them myself:

  • HEIC → JPG conversion on transfer
  • Storage analyzer for your Android device
  • Safe deletion with trash-based recovery

Feature Comparison

Requirements

  • macOS 12.0 Monterey or later — Universal Binary (Apple Silicon & Intel)
  • Android 5.0 or later — Developer Mode + USB Debugging enabled (one-time setup)

Why I'm Writing This Now

I shipped to Product Hunt and... completely forgot to write anything about it. Classic.

The app has been getting solid feedback from photographers, video creators, and developers who move large files regularly between their phone and Mac. Figured it was time to actually explain the technical decisions behind it.

Pricing

One-time purchase on Gumroad. Lifetime access to all future updates. No subscriptions.


If you're curious about the Tokio parallel streaming implementation or how the ADB device detection works, drop a comment — happy to go deeper on any of it.

🐤 Hiyoko AutoSync on Product Hunt ·
[Download on Gumroad]
https://hiyokoko.gumroad.com/l/hiyokoautosync_en
https://hiyokoko.gumroad.com/l/hiyokoautosync_jp

Top comments (0)