I'm looking for a music app for Android to play music I have on my phone, with the usual albums, playlists, shuffle, and background play features, and with basic controls on the lock screen (pause/play and back/forward).

And no ads/tracking. I want this to run offline. And while I'd be willing to buy an app to play my own purchased music library, I can't stand the idea of having to look at (or worse, hear) ads to listen to music I've already paid for and is already on my local storage, not using someone's server. I want to be able to just open the app, find the album or playlist or song I want to listen to, and go -- not have to navigate around "subscribe now!" "You might also like..." and so on. (This means you, Amazon.)

I tried Simple Music Player a while ago and it was kind of buggy at the time, though I might take a look at it again. I've looked at the Play store and just about everything that might fit the bill says it has ads

  • MediaMonkey is pretty decent
    – user76494
    Jul 14, 2022 at 6:02
  • 1
    At Play Store, most things have ads and/or tracking and often do not tell that in their details page. You might wish to give F-Droid a try, which only ships open source apps and clearly marks if an app has some "anti-feature". For your specific question, be welcome taking a look at my corresponding app listing and watch out for apps having a "star" (no trackers found) and/or carry the F-Droid icon (then pick the F-Droid version).
    – Izzy
    Jul 14, 2022 at 6:33
  • @Gantendo MediaMonkey in the free version contains 3 trackers (analytics modules). But apps worth a look include Odyssey, Vinyl, AIMP, PowerAudio, Odéon and others, see my comment above.
    – Izzy
    Jul 14, 2022 at 6:43
  • I have been using poweramp for years. No problem, not free, no adds. Cannot add details without a PC...
    – Damien
    Jul 14, 2022 at 9:32
  • I played with Simple Music Player over the last few months. Had issues with ease of managing tracks in playlists. So still in development... You can try out the free version of MediaMonkey, provided you are okay with above comments. Mpv - if you want to run via terminal :). On my old Android, I still use the stock player which has disappeared in new versions of Android.
    – Z Z
    Jul 15, 2022 at 8:20

7 Answers 7


First one that comes to mind is VLC, the epitome of free open source software, champion of playing media.

It is widely known on desktop for its video playing capabilities, but can play audio as well, and features media library capabilities on mobile platforms.

As far as I know it is free of any anti-features like tracking, ads, or promoting remote services.

It is available in FDroid appstore as well, if you wish to avoid any more Google tracking.


I've been using Pulsar for quite a long time now and I'm more than happy with it.

Let's just skip to the self description from the Play Store: "Pulsar Music Player has long been one of the best music players on Android. It is an offline audio player without advertisements. Its gorgeous user interface matches every single detail of the material design guidelines."


Warning: This answer may have a learning curve for you, but it fulfills at least most of your requirements.

You might try installing Termux on Android and then use the command-line media player called mpv on Termux (pkg install mpv). I like how even if you have a bluetooth keyboard (but it works with the screen keyboard, too), you can pause/play with the spacebar (or p), skip to the next track with enter, fast-forward/rewind with the arrow keys, q to quit, speed it up and slow it down with the brackets (and curly brackets), make the speed normal again with backspace, volume up/down with 0 and 9, and mute/unmute with the m button.

You can play m3u playlist files with mpv. Or you can play a directory the same way.

To shuffle, do mpv --shuffle myPlaylist.m3u or mpv --shuffle myDirectory (you can specify a filetype after that like mpv --shuffle myDirectory *.mp3). To go back and forth in the playlist, you can use < and >.

To make the playlist repeat, use --loop-playlist. Note that when shuffling and repeating a playlist at the same time, it will reshuffle the playlist each time it repeats.

To toggle repeat 1 on/off press shift+L while it's playing (or use --loop-file). To make it so it's on by default, see this answer.

See the link below for more on loops.

Here's a help page for mpv: https://mpv.io/manual/master/

If you want to program some Lua functions to pass in, you can do that, too! In addition to the manual above, see https://github.com/mpv-player/mpv/blob/master/DOCS/man/lua.rst

Using a Lua script in a file named test.lua, here's an example of its contents (what this does is make it so when you pause the playback, it'll print "It worked!" to the screen; this method is adapted from the example in the github link above):

function on_pause_change(name, value)
    if value == true then
        print("It worked!")
mp.observe_property("pause", "bool", on_pause_change)

And here's an example of how you can pass it in (the = is necessary in this case):

mpv --script=test.lua somefile.mp3

Termux is good at staying active in the background while you do other stuff.

You'll probably want to download Termux from F-Droid if you want a recent version.

There are no ads. It's free. However, it won't show controls on the lock screen; however, you might be able to find a way to configure something to make that work with the Termux:Tasker app. I'm not sure what Tasker is, but I think it's this app.

You can use mpv on Linux, too (and use it for other things besides audio there, too, but video won't work on Termux by default).

I'm not sure what you mean by the usual albums feature (and, I don't know if mpv does that). You could probably write a script to do it, though!

Termux is a lot like a Linux command-line operating system. You'll need to know Linux command-line commands (like ls and cd).

If you want to access your Android music folder, you'll need to enable that with the command termux-setup-storage, and then do cd ~/storage/music to get there. ~ stands for your home directory path in Termux/Linux (so you don't have to type it out every time). cd stands for change directory.

You can even configure audio equalizer settings, like this: "mpv -af superequalizer=1b=1:2b=1:3b=1:4b=1:5b=1:6b=1:7b=1:8b=1:9b=1:10b=1:11b=1:12b=1:13b=1:14b=1:15b=1:16b=1:17b=1:18b=1 myMusic.mp3" (as seen here; the example I adapted from the link makes it flat).


I routinely use Musicolet to play my local MP3/OGG collection in the SD card, organized in folders, without any hassle. It's free and very lightweight, doesn't have ads nor require any internet access; only asks permission for accessing local music files. Even has an property editor to change internal information of the MP3 files!

Link on Google Play: Musicolet


I recommend looking at Simple Music Player again. I tried the latest version 5.13.0, and you can now import playlists, etc. It will probably be okay for most use-cases.

The only issues I still have with it are:

  • Having created a playlist, if I decide to change order of indvidual tracks, I can't find a way to drag and move a track to a new position.

  • If for any reason the player is stopped/killed, it does not seem to continue playing track from last position.

The other alternative is the free or paid version of MediaMonkey.


I use the free DoubleTwist player from https://www.doubletwist.com/player

No ads, some premium features you can pay for (10-band EQ, cover art download). The google play page says "Contains ads" but I've never seen or heard one in the years I've had it.


I'm a fan of Poweramp. It's not too expensive, and it pretty much just works. There's a trial version to check it out before you buy it.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.