Git Product home page Git Product logo

eeveespotify's Introduction

Banner

EeveeSpotify

This tweak makes Spotify think that you have a Premium subscription, granting free listening, just like Spotilife.

The History

Several months ago, Spotilife, the only tweak to get Spotify Premium, stopped working on new Spotify versions. I decompiled Spotilife, reverse-engineered Spotify, intercepted requests, etc., and created this tweak.

Restrictions

Please refrain from opening issues about the following features, as they are server-sided and will NEVER work:

  • Very High audio quality
  • Native playlist downloading (you can download podcast episodes though)
  • Jam (hosting a Spotify Jam requires Premium, joining by link currently works only with Jailbreak/TrollStore)

EeveeSpotify replaces Spotify monthly limited lyrics with Genius. If the tweak is unable to find a song or process the lyrics, you'll see the original Spotify one. The lyrics might be wrong for some songs (e.g. random language translation, article, another song). This is due to how the tweak searches songs on Genius. While I've made it work in most cases, kindly refrain from opening issues about it. Genius lyrics are also not and will never be time-synced.

In theory, implementing downloading/offline mode locally should be possible, but it will not be included in this tweak.

How It Works

Upon login, Spotify fetches user data, including active subscription, and caches it in the offline.bnk file in the /Library/Application Support/PersistentCache directory. It uses its proprietary binary format to store data, incorporating a length byte before each value, among other conventions. Certain keys, such as player-license, financial-product, and type, determines the user abilities.

The tweak patches this file while initializing; Spotify loads it and assumes you have Premium. To be honest, it doesn't really patch due to challenges with dynamic length and varied bytes. Ideally, there should be a parser capable of deserializing and serializing such format. However, for now, the tweak simply extracts the username from the current offline.bnk file and inserts it into premiumblank.bnk (a file containing all premium values preset), replacing offline.bnk.

Hex

Tweak also changes query parameters trackRows and video in HTTP requests to true, so Spotify loads videos and not just track names at the artist page. Sorry if the code seems cringe; the main focus is on the concept. It can stop working just like Spotilife, but so far, it works on the latest Spotify 8.9.## (Spotilife also patches offline.bnk, but it changes obscure bytes that do nothing on new versions). Spotify may reload user data, and you'll be switched to the Free plan. When this happens, you'll see a popup with quick restart app and reset data actions.

To open Spotify links in sideloaded app, use OpenSpotifySafariExtension.

eeveespotify's People

Contributors

whoeevee avatar asdfzxcvbn avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.