**This does not require root. **
Requirements: Android 4.0.3+, no dpi, should work with both arm & arm64 (only lib differences), min API 15
*Edit: Based on feedback there are now two variants of the app: An x86 and an Arm build
/*Features: */ -Hooray no more ads! - built in ota downloader - new builds will be available for download on your device immediately after I upload them Edit: Ota has been discontinued, many users experienced FCs while downloading new builds and hosting each build was costing a bit more than I expected) Where's everything else? That's it. This project is NOT intended to replace Spotify Premium.
[10/4/17] /*Changelog: */ Change: [ARM] rebase stable to 22.214.171.1247.b.23857676 Note: x86 build will be up soon
[9/24/17] /*Changelog: */ Change: Based on feedback there are now two variants of the app: An x86 and an Arm build Change: rebase stable to 126.96.36.1992.s Change: rebase experimental to 188.8.131.525.b.23594446 [9/13/17] /*Changelog: */ Change: rebase experimental to 184.108.40.2068.b.23071037 Fix: revert opt.cl patch Fix: More changes to remove ads [9/9/17] /*Changelog: */ Change: rebase stable to 220.127.116.113.s Change: rebase experimental to 18.104.22.1681.b.23071016 Fix: more changes to remove ads [9/2/17] /*Changelog: */ Change: rebase stable to v.22.214.171.1240.s.22546305 Change: rebase experimental to v.126.96.36.1996.b.22808707 Change: new pattern to remove ads Fix: (again) completely remove "watch 30 second video for 30 minutes of adfree streaming" [9/1/17] /*Changelog: */ Change: rebase stable to v.188.8.131.521.s Change: revert package back to com.music.spotify [8/25/17] /*Changelog: */ Change: rebase stable to 184.108.40.2069.s Change: rebase experimental to 220.127.116.116.b [8/20/17] /*Changelog: */ [Master] Change: rebase to 1283.s Change: migrate to opt 814642.vl2 pts Change: new app icon Feature: [Experimental] Force location to US, this should let Spotify work anywhere, regardless of location restrictions Feature: added a welcome message (dismisable) Feature: added quick settings tile Fix: *null() Home feed Fix: white on white text Fix: random FCs while connecting to bluetooth & Chromecast Fix: UI hang while casting (reverting to old method fixes it) Fix: missing languages (only en_US applying) Fix: [Experimental] location randomly reverting to device default Fix: other misc bug fixes Fix: some more code cleanup [8/9/17] /*Changelog: */ Change: rebase stable to v.18.104.22.1683 Change: rebase experimental to v.22.214.171.1244.b [7/30/17] /*Changelog: */ Change: rebase stable to v.126.96.36.1991 Change: rebase experimental to v.188.8.131.527.b Change: switched back channels Change: package name - com.spotifyadfree.music Fix: FC for MIUI users Fix: completely removed "30 minutes for adfree" popup Fix: random hang during chromecast Fix: [ALPHA] another opt patchset for Chromecast (please provide logs and feedback) Fix: removed more unnecessary code [6/11/17]/*Changelog: */ Fix: an issue where an ad appeared that forced users to watch a video for '30 minutes of adfree streaming' Fix: an issue where ads would fail to load, resulting in a 'black screen' of death Fix: an issue where the app would hang and then fc Fix: videos fail to load Fix: [Experimental] persistent ads on chromecast Fix: some code cleanup/removed some more unnecessary libs Fix: other minor optimizations [5/13/17]/*Changelog: */ Change: [Experimental] another patch for location spoofing Fix: [Experimental] replace persistent ads with black banner Fix: [Experimental] Fc loop after force closing an ad Fix: lag while casting [Older changelogs removed] [3/17/17-5/13/17] Too many experimental builds and patches intially to keep track of here, look through thread and afh/basketbuild for old builds and changelogs. Upcoming changes: */ Fix: remove upgrade banners Fix: replace " premium only popup" with transparent overlay
Fix: keep ad blocking persistent after updates (really depends on Spotify's end but from what I've seen from recent releases I think I have it somewhat working, well at least for now anyways)Until then keep auto update disabled for Spotify in the Play Store. Edit: Completely broken, worked last release but Spotify has patched it up, now requires manual editing again each release Feature: added quickshare button Feature: **New package name**-Users will now be able to use this version of Spotify simultaneously with other Spotify instances. This is for users who do not wish to deal with auto updates and features breaking or who just want to use this patched version simultaneously with an official build or if a device comes preinstalled with Spotify as a system app. Feature: [ALPHA] lockscreen blurred media playback option directly embedded within app settings
This project is still centered around ad blocking. Other features simply exist because of curiosity and lack of Xposed support on Nougat. Features may break after future updates and I may eventually migrate back to just ad blocking. Also as this was more of a proof of concept/learning build I will update the app when I get the time. I provide no guarantees to support newer Spotify versions. I am currently very busy with school.
There is nothing I can do about offline downloads or exporting downloaded media. These features will never be incorporated even if I could as this project was never intended to replace Spotify Premium. I was annoyed at seeing intrusive ads take over the screen while using the application and as I barely use Spotify anyway I couldn't justify premium. ( I have a Google Play Music subscription). I originally intended to build a native ad blocker (that project is still in the works), however due to limitations on some older devices I owned that could not be rooted, I changed track and began working on a rootless solution. Also I understand that many users with premium are aggravated that they cannot export and easily move around their downloaded media or even play media using another music player. I've looked into this and it is not currently possible. Spotify stores offline media in Ogg Vorbis codec format. They also use their own encryption so only their own player can play the downloaded media. In fact, decryption keys are not stored locally at all. Instead they are individually linked to the subscription holder. So yes, technically in theory the downloaded media can be exported but the exported media will be rendered useless as there is no way of decrypting and playing it.
Also there is nothing that can be done locally to block ads on Chromecast. Chromecast does not mirror your spotify app when you cast. Instead it recognizes the stream and plays it independently, meaning unless you have a premium account there is no way to get rid of ads. I've tested a couple of spoofing methods the last few builds but they all failed as Spotify checks per account. The only alternative atm is to mirror your display or just use bluetooth. If you do that, then it will actually stream from the app itself without triggering any ads.
Android Auto README
The Android Auto app checks where the app was installed from before displaying the app on the Android Auto dashboard. This means that if you didn't install spotify from the play store then it won't just work on Android Auto. The workaround for now is this command via adb.
pm install*-i*"com.android.vending"*-r/sdcard/(file location of where you saved the spotify apk) /*This changes "com.google.android.packageinstaller" to "com.android.vending" so that Android Auto thinks Spotify is installed from the Play store and not sideloaded. */
Downloads, Updates, Installation & Logs:
1. Download the apk
2. Install the apk
(Pretty straightforward isn't it )
(It would be greatly appreciated and very helpful if people could provide feedback, preferably including your device model and if there are crashes or lags or god forbid, any ads, provide a log via adb or an app like matlog)
*Note: I don't have the time to merge in requests and other features atm. I'm too busy with work and school right now. Rebasing on the other hand is fast and mostly automated on my end as recent Spotify releases have generally been very minor incremental improvements. Just need to pull new builds from apkmirror and I have a script setup to apply most of the patches. Since I don't really use Spotify anymore (Play Music is where it's at ), I rely on you guys for logs and feedback. Anyways, if something is screwed up, then please capture a log and let me know so I can take a look at it, otherwise I am assuming that everything is A-OKAY.
Keep up with updates: https://www.pushbullet.com/channel?tag=spotifyadfree
Telegram for updates/test releases: t.me//spotifyadfree
Latest supported release: 184.108.40.2067.b.23857676
Latest experimental TEST build: 220.127.116.117.b.23857676
*Note: "Stable" is based on the latest Play release while "Experimental" is based on the latest beta build pulled from apk mirror.
[ARM] Stable Ad-free: Link
[x86] Stable Ad-free: Link
Experimental Builds: Link
All builds: Link
Donation: (You really don't need to, but if you really want to here ya go, it'll certainly be appreciated and help projects and costs. https://paypal.me/guitar1238751
Credits & Thanks:
Huge thanks to:
Without these awesome guys this project would not have been possible.
**PS: Patched YouTube coming soon... **