1
0 Comments

The problem I was solving

I have a NAS at home and use Google Drive for work. Managing media between them on Android meant switching between 5-6 apps constantly. None of them did everything:

- VLC plays from SMB but can't manage files

- Solid Explorer manages SMB files but its media player is basically useless

- Google Photos ignores NAS entirely

- Each cloud has its own separate app

I couldn't find a single app where every storage type was treated equally. So I built one.

This started as a "how hard can it be" project. The answer: harder than expected.

The most technically interesting problems:

- Getting ExoPlayer to stream from SMB required a custom DataSource implementation wrapping SMBJ's random-access file handle

- SMB connection pooling — naive implementations create a new connection per file, which makes large directory thumbnailing unbearably slow

- WorkManager + scheduled file operations that survive battery optimization on Chinese OEM devices (Xiaomi/Huawei kill background processes aggressively)

- Supporting 4 product flavors (Standard/Lite/Photos/Legacy) from a single codebase with feature flags — this paid off for the Play Store segmentation

Current feature count: 22 feature areas, 100+ individual features. Things I didn't expect to build: an EPUB reader, OCR with AR translation overlay, a Wear OS companion app, home screen widgets, duplicate detection via SHA-256 across network sources.

posted toAvatar for product FastMediaSorter v2
FastMediaSorter v2