Skip to content
A music player app for Android hits the basics hard
Branch: master
Clone or download
Latest commit ffddace Apr 3, 2017
Type Name Latest commit message Commit time
Failed to load latest commit information.
src Fix list of files in All:album Mar 11, 2016
storelisting Hungarian translation for ShortDescription.txt Nov 4, 2016
.gitignore Added ignore for Android Studio gradle wrappers Dec 1, 2014
AndroidManifest.xml Version number bump for Hungarian Translations Nov 24, 2016
LICENSE.txt added full text og GPL Aug 30, 2014 Update Apr 4, 2017
build.gradle build tools update Oct 25, 2015


Update: As of 2017.04.01 I am no longer actively maintaining this app. If you've created a fork and are actively maintaining it, feel free to submit a pull request adding a link to your version.


A music player for Android that hits the basics hard

I do my best to address issues when they arise, but I'm pretty busy, so it may take a long time for me to push updates.

If you want to motivate me to work on a particular feature, please consider a donation to Doctors Without Borders.Just tell me about your donation by commenting on the appropriate issue and I'll be like "woah, I better work on this!"

If you're having troubles with media button presses being ignored, check out Media Button Router:

Building: I've been building this in Eclipse. For Android Studio do 'Import Project' -> select build.gradle -> click 'Yes' for the gradle wrapper (or choose your own gradle folder. Wrapper is recommended as AStudio is finicky about which version it uses)

Installing: The production version is available here:

Google Play:




Tired of music players that take forever to start up because they're loading ads or trying to download stuff? Of music players that ignore Bluetooth controls, or stop responding after a few minutes? I was too, so I wrote this app! The Pretty Good Music Player is an open source (GPL) folder-based music player with no frills. It's small, it's responsive, and it plays music.

Feature Details:

  • Audiobook mode for resuming playback where you left off
  • Notification controls
  • The color theme and text size are now configurable!
  • This player protects against accidental pausing when your phone is jostled and the headphone cord shifts. I added this because it was annoying when my phone was in my pocket and would auto-pause because the headphone cable was bumped.
  • Plays .mp3, .m4p, .m4a, .aac, and many more types of audio files.
  • Accepts play, pause, previous, and next commands from Bluetooth headsets.
  • When you select 'All songs' for a given artist, the songs are ordered by album, not alphabetically.
  • Automatically pauses and resumes when another app (e.g. GPS) needs audio.
  • If another app needs audio for more than 30 seconds (e.g. a phone call), it does not automatically resume.
  • "Repeat All" is always on.
  • If you click "back" too quickly, it double checks that you want to leave before quitting.

Expected Folder Layout: It's designed to work with artist folders copied from iTunes. That means it expects directory structure:

music/ artist/ /album1 /01 - First Song.mp3 /02 - Second Song.mp3 /03 - Third Song.mp3 /04 - Fourth Song.mp3 /album2 /01 - Another Song.mp3 ....

Misc: I've noticed that if I pause a song for an extended period of time, I need to press and hold the 'pause' button on my Bluetooth headset to get it to resume playing.

The full source code is available here:

The Pretty Good Music Player also has a Facebook page where I post information about coming releases and issues and enhancements:

The awesome icon was designed by Emily Krueger of Vine Creative:

If you have any problems, please leave a comment with as much information as possible and I'll try to get a fix out ASAP.

Compatibility: Bluetooth control tested with an LG Electronics Tone+ HBS-730 Bluetooth Headset

Legal Stuff:

Pretty Good Music Player Copyright Tyler Smith 2014

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

See for a full copy of the GNU General Public License.

Reddit Stuff: I post on Reddit as

You can’t perform that action at this time.