Code Monkey home page Code Monkey logo

spotify-tv's Introduction

!!! DEPRECATED !!!

The official Spotify app for Android TV is finally here!

https://play.google.com/store/apps/details?id=com.spotify.tv.android

As a result, I won't be working on this project anymore. If you want to keep working on it (e.g. you feel it's better than the official one), please let me know.

Thanks everyone for collaborating on that project.

TV Player for Spotify

Unofficial Spotify app for Android TV

Features

  • Login in with your username & password or via Facebook
  • List your playlists (including starred), saved albums, artists and songs
  • See the tracklist for each playlist and album (thanks to @Dahlgren)
  • Stream any track of your library
  • Search for artists, albums, songs and playlists
  • Controls (Shuffle, Previous/Next Track, Play, Pause, Stop)
  • Global search (thanks to @Dahlgren)
  • Featured Playlists and New Releases (thanks to @Dahlgren)
  • Settings (Bitrate)
  • Recommendations in Android TV Home (based on Featured Playlists in the user's country) (thanks to @Dahlgren)
  • Last.fm scrobbling
  • Browse playlists by categories (thanks to @Dahlgren)
  • Setting - Customize UI elements (e.g. show or hide Feature playlist and new releases)

TODO

  • Control buttons in Details screen and Now Playing screen
  • Use "Saved Albums" new API endpoint to grab My Albums and My Artists
  • Add to playlist button for each track in the tracklist
  • Manage Playlist (create, edit, delete, etc...)
  • Recently Played
  • Friends
  • Recommendations in Android TV Home (based on user's recommended artists/albums)
  • Setting - dim screen after 2 minutes of playing
  • Game controller controls (play, pause, previous, next, etc...)
  • Refactor: recommendations using support library

Release build

Add the values release.storeFile, release.storePassword, release.keyAlias, and release.keyPassword to release.properties. release.storeFile should be an absolute path to your keystore, the others should be the string value. See release.properties.sample for an example file.

Pull Requests

I welcome and encourage all pull requests. It usually will take me within 24-48 hours to respond to any issue or request. Here are some basic rules to follow to ensure timely addition of your request:

  • Match coding style (braces, spacing, etc.) This is best achieved using CMD+Option+L (Reformat code) on Mac (not sure for Windows) with Android Studio defaults.
  • If its a feature, bugfix, or anything please only change code to what you specify. DO NOT do this: Ex: Title "Fixes Crash Related to Bug" includes other files that were changed without explanation or doesn't relate to the bug you fixed. Or another example is a non-descriptive title "Fixes Stuff".
  • Pull requests must be made against latest master branch.
  • Have fun!

License

GPL v2

This open source app complies with the Spotify TOS

spotify-tv's People

Contributors

dahlgren avatar gw111zz avatar josh-burton avatar mick1418 avatar sregg avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

spotify-tv's Issues

Release tags

Would it be possible to create git tags when releases are made to the play store? Would be great for debugging crashes. Also would be useful to upload the apk to the releases page :)

Native lib crash

It seems like the latest play store version is a bad build or something.

On startup the spotify sdk crashes, with an exception where it can't load the native .so libs.

Crashlytics Access

Hey, I was wondering if it might be possible to get read only access to crashlytics? Then I can help fix some crashes :)

You can contact me on twitter twitter.com/athornz

Progress on google play store

Just wondering if there are plans to rebrand the app and get it on play store again? (I was about to start writing my own to play my own playlists when I came across this project)

Cant play songs.

When trying to play songs, (clicking on album or single song).
it wont play but instead start the logging in screen from spotify again and starts over at the top of the screen.

Option to force / use Daydream from within the app

As I wrote on the Google+ community - daydream seems not to be activated always from within the app. FYI In Emma, the option is "Use screensaver"

Me:
For some reason, when playing music Android TV (SHIELD in my case) won't use daydream. Since I use this on a TV I would like to prevent burn-in so daydream is quite essential. Emma for Spotify can activate daydream so can this be added? I like the UI way better than Emma but would not like the UI to be burned into my plasma forever :)

AKIS A.
If you exit to lean-back launcher screen the daydream will activate. If you stay inside the app daydream often does not start. (Nexus Player, Android OS 6.0.1)

Me:
Strange but everything is fine now, also in the app :)
I set Daydream to activate in 5 mins and Stay awake on Music to off. Seems to work!
...but not always as you mentioned - from the app that is. Launcher is fine. So my request remains - an option to activate daydream from within the app. Thanks!

Now playing animations not working upon cell recycling

"Now playing" animations are not stopped upon cell recycling when browsing a playlist while a track is currently playing.
Animations become all messed up (playing on wrong cell once the current track cell has been recycled).

Question: does it needs premium subscription?

As I'm looking for a way to remotely control Spotify on the nexus player, does this solution works even without a premium subscription?
Or is it like the official app (sideloaded requires premium subscription to allow Spotify connect)?

Searching from the Android TV homescreen doesn't work

As far as I can tell, the app supports regular (voice) search through the leanback support-library and has a dedicated intent for search.

What I can't get working is searching from the main Android TV homescreen. I suspected that discoverability was simply not implemented, but skimming quickly through the source it seems to be there too.

Should this be working at this point? Am I doing something wrong? I'm running the App from the Play Store, not built from source myself.

Issues after last PRs

  • Album details screen is completely empty (sometimes, the paylist details screen is empty too)
  • Play/Pause toggle doesn't work in the Now Playing screen

Can't update support library

Updating the support library breaks the selection state for cards.

After some investigation it seems this is due to the SpotifyCardView. Any calls to load an image or change the imageview dimensions breaks the selection.

It is probably a better approach to extend BaseCardView and create our own CardView, rather than wrapping the CardView in another layout.

Shuffle doesn't work

Shuffle doesn't work in this app for me, the shuffle icon is on (it's green) but my playlists still play in order.

Using this on a Sony Bravia KDL-43W805C

Search sometimes duplicates rows

Sometimes when searching for a song, the searchFragment ends up duplicating all the rows (albums, artists, playlists).
I had 3 empty rows on the top, and 3 with content on the bottom.

There may be an issue while refreshing the adapter after each search request.

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.