2.0.13-beta1
- Continues where 2.0.12-beta6 left off
2.0.12
- Fixed an issue preventing playlists from showing up
- Crash fixes
- I've been rebuilding Shuttle from scratch for almost a year now! DM me your Play Store email address on Discord Discord if you're interested in testing the alpha :D
2.0.12-beta6
- Fixed an issue where artwork didn't load on some devices
- Fixed an issue where empty user-created playlists didn't show up
2.0.12-beta5
- Fixed a crash when adding to queue from folder browser
- Fixed a bug where string was not formatted after adding tracks to queue
- If you still can't update widgets and it just crashes when you try, I can't help you. I have tried everything imaginable. It's a bug with your phone/firmware. I tried!
- Crash fixes
2.0.12-beta4
- Possible crash fix when initialising widgets
- Fixed an issue when casting, where songs would be skipped after a song ends
- More crash fixes
2.0.12-beta3
- Fixed a crash when editing tags on SD card
- Fixed a playback issue for some songs whose path contains special characters
- Various other crash fixes
2.0.12-beta2
- Fixed issue where first song was skipped when resuming playback after queue completes
- Fixed crash when editing tags
- Fixed crash when attempting to upgrade
- Thank you beta testers, for all your work! Please keep the issue reports rolling in.
2.0.12-beta1
- Continues where 2.0.11-beta2 left off
- Fixed crash when creating & adding songs to playlist
2.0.11
- Fixed artwork downloading issue (no longer relying on flaky Last.FM API)
2.0.11-beta2
- Fixed crash when opening tag editor
- Fixed crash when setting ringtone
- Fixed crash when using 'go to artist' / 'go to album'
2.0.11-beta1
- Continues where 2.0.10-beta1 left off
2.0.10 (hotfix)
- Artist artwork is currently unavailable, as the Last.Fm API is down.
- Fixed an issue where album artwork wasn't downloaded from iTunes when Last.Fm fails
- Fixed performance issues introduced in previous build
2.0.10-beta1
- Continues where 2.0.9-beta1 left off
2.0.9 (hotfix)
- Fixed issue preventing Last.FM artwork from downloading
- Fixed an issue where current song / queue position was messed up after turning shuffle on
2.0.9-beta1
- Continues where 2.0.8-beta5 left off. Minor amendment to 'shuttle is running' notification timing.
2.0.8 (hotfix)
- Workaround for a major Android 9 platform bug causing lots of crashes
2.0.8-beta5
- Don't display 'shuttle is running' and play a sound when music is started/stopped
- Implemented an annoying workaround for a crash caused by Google. You'll now see 'Shuttle service is running' for anywhere up to 12.5 seconds after doing something which starts Shuttle's Music Service.
2.0.8-beta4
2.0.8-beta3
- More crash fixes
- Should be able to create widgets again
2.0.8-beta2
2.0.8-beta1
- Reduced duration of music fade in / fade out
- Major refactoring of various parts of code, to improve maintainability. This is likely to introduce a few bugs, I'll be looking into those immediately.
2.0.7 (hotfix)
- Workaround for a major Android 9 platform bug causing lots of crashes
2.0.7-beta12
- Fixed an issue where queue wasn't restored when returning to app, if current song is a podcast
2.0.7-beta11
- Fixed another issue where playback would randomly pause, usually about 5 minutes after starting playback
- Fixed an issue where playback wouldn't resume if paused for more than a few minutes
- Note: I apologise for these extremely annoying playback issues. Playback is basically the number one job of this app. I'm treating these as highest priority, and also trying to prevent these bugs from recurring.
2.0.7-beta10
- Fixed an issue where playback would randomly pause, particularly when returning from another app
- Fixed incorrect positioning of the playback button on the now playing screen
2.0.7-beta9
- Fixed an issue where Notification would appear after exiting Shuttle
- Fixed an issue where queue was lost when reopening Shuttle
- Fixed an issue where current playback position was lost when reopening Shuttle
- Sort tracks by disc number in Android Auto
2.0.7-beta8
- Fixed an issue where Chromecast icon wasn't visible in Shuttle+
- Another attempt to fix that god damn widget configuration crash ¯\_(ツ)_/¯
- Crash fixes
2.0.7-beta7
2.0.7-beta6
2.0.7-beta5
2.0.7-beta4
- More Crash fixes
- Updated dependencies
- Target Android 9.0
2.0.7-beta3
2.0.7-beta2
- Migrated to new Cast Framework. Lots of improvements to Chromecast playback
- Added swipe-to-remove to queue, with a lock button to prevent accidental swiping
- Improved fade when playing/pausing
- Made it more obvious when Shuffle/Repeat are on/off, icons are now more transparent when disabled
- Fixed an issue where sorting didn't work in Album Detail screen
- Lots of behind the scenes improvements
2.0.7-beta1
- Fixed an issue where shuffle button color would revert back to white until pressed again
- Updated icon & made it adaptive. Thanks Rink!
- Translation updates
2.0.6
- Fixed a major issue where the app would randomly pause. This occurred when starting playback from a headset, bluetooth, widget, or any other means which didn't involve opening the app.
- Various Crash fixes
- Note: There are some crashes occurring on Android 9.0 (Pie), which are platform related. These have been raised with Google and we can only wait for a fix.
2.0.5
Features:
- Added support for Android Auto.
- Improved artwork based colour selection. Shuttle now chooses nicer colours from the artwork, and themes the text and buttons on the now playing screen accordingly.
- Updated to a fresh, more subtle mini-player.
- Improvements to the queue. No longer 'flashes' when the queue changes. Drag & drop is smoother now.
- Don't show albums in playlist detail view
- Added option to display artwork in song list. On by default.
- Added number of songs & total time to queue
- Added total time to album, artist & genre detail screens
- Don't show podcasts in various song listings. Podcasts now only show up in the 'podcast' playlist.
- Display number of songs and duration in playlist detail view
- 'Play Next' in queue now moves the song to the next position instead of duplicating the song into the queue
- Lots of behind the scenes improvements
- Updated translations
Fixes:
- Fixed medium sized widget display issues
- Fixed an issue where various menu options triggered incorrect actions
- Fixed an issue when attempting to play an empty queue from the widget or headset button
- Fixed an issue where playing a track would sometimes fail, so the app would quickly move to the next song, which may fail, and so on.
- Fixed an issue where the shuffle icon wasn't shown when shuffle was on
- Fixed an issue where whitelisting a file also blacklisted it
- Fixed an issue where genres couldn't be added to playlists
- Fixed an issue where date added order was ignored in recently added playlist
- Fixed a crash when sending a media button pause command while app isn't running
- Fixed a crash when using Dashclock
- Fixed a crash when viewing the queue on tablet devices
- Fixed a crash when moving to landscape mode
- Fixed a bug where the media player was queried many times per second, potentially resulting in performance issues.
- Various other crash fixes
2.0.4
- Fixed a bug where 'play next' didn't work with songs on artist/album/playlist/genre screens
- Added play next to multi-select menu
- Added play next to overflow menu for artist, album, genre & playlist detail screens
- Reinstated batch-delete from queue
- Bumped minimum Android version to Lollipop (21)
- Added a launch task which attempts fix the 'year' of songs/albums in the MediaStore, if the year is present in the id3/vorbis tags
- Fixed an issue where some tasks started when the app is launching, instead of waiting a few seconds. (Improves launch time)
- Fixed an issue where 'play next' on an item in the queue caused it to play after the next track
- Use https for networking calls
- Updated translations
2.0.3
- Reinstated SD card file deletion (Lollipop+)
- Added ability to quickly set, remove, and navigate to a specified home directory when folder browsing
- When a home directory is specified, the back button won't navigate past that directory
- Fixed an issue where back button didn't work correctly when displaying folder browser in tabs
- Added ability to batch remove songs from the queue
- Fixed a bug causing the CAB (thingy that appears at the top of the screen when you long press stuff) to remain open after performing an action
- Translation updates
- Crash fixes
2.0.2
- Fixed an issue where playback randomly paused due to changes to nearby bluetooth devices
- Fixed an issue where bitrate & other song info didn't show up
- Various crash fixes
2.0.1
- Lowered translation threshold. Translations need to be only 70% complete to make it into Shuttle.
Calling all translators: Shuttle Translations
- Various crash fixes
2.0.0
Features:
- Show changelog on launch
- Dynamic themes!
- Added album-shuffle (thanks Will Coughlin)
- Added a display option to show remaining time (thanks lastbulletbender)
- Added multi-select to artist/album/playlist/genre detail screens & search screen
- Added 'share' option to now playing screen menu items
- Added 'go to genre' option to now playing screen
- Added more playlist menu options to playlist detail screen
- Shuffle now turns off when a new list of songs is added to the queue. This can be disabled in playback settings
- Remember playlist sorting per-playlist
UI changes:
- Major theming overhaul. More stuff is themed correctly now
- App theme now matches the current artwork. This can be set to only occur on the 'now playing' screen, or turned off in settings
- Redesigned artist/album/genre/playlist 'detail' screen.
- Toolbar now collapses when scrolling
- 'Up Next' now slides up from now-playing
- Artwork is now full-bleed to the top of the screen
- Overhauled landscape mode
- Album count shown for artists
- Song count shown for albums
- Settings has had a facelift
- Moved Equaliser & Sleep Timer to Navigation Drawer
- Sleep timer now displays time remaining in drawer when active
- Lyrics are now displayed in their own popup, instead of on top of the artwork
- Close Voice Search screen if no results are found
Code improvements:
- Major redesign of many aspects of the codebase
- Overhauled theming engine
- Migrated to RxJava 2
- Removed lots of old, unused resources - smaller app size, easier to maintain
- Reduce the number of SQL queries being performed, particularly during launch
Bug fixes:
- Fixed an issue where 'play next' created a duplicate when used from now-playing queue
- Fixed an issue where playback didn't stop when disconnecting from bluetooth
- Fixed various tag editing issues
- Work around a Last.FM issue to ensure artwork is high quality
- Fixed crash when using gmail style placeholders
- Fixed an issue where playing a song from a folder didn't enqueue the surrounding songs
- Fixed some memory leaks (thanks Khang)
- Lots and lots of other crash fixes
1.6.7
- Fixed an issue where enqueued songs were lost when changing shuffle mode
- Fixed an issue where the folder scanner only scanned songs already available in the MediaStore (didn't find new music)
- Fixed an issue preventing albums & songs showing up in album, artist & genre detail screens
- Close drawer when back button is pressed
- Reduced 'most played' playlist to 20 most played songs. Only count songs with 2 or more plays.
- Fixed crash when adding apostrophe to playlist name
- Fixed crash when attempting to edit tags
- Various other crash fixes
1.6.6
- Reverted a change which caused compilation albums without 'album-artist' tags to be split up
1.6.5
- Show this changelog on startup (meta)
- Fixed an issue with slow loading of library on some devices
- Added back 'QuickLyric' button to lyrics screen
- Fixed an issue where songs with no album tag information ended up being grouped under one artist
- Search: Improved speed & accuracy of search results
- Search: Fixed an issue where searching didn't work very well for songs/albums/artists with multiple words in the name
- Search: Added option to remove artists & albums from search results
- Search: Added option to disable fuzzy searching
- Added accessibility content descriptions to notification buttons & widgets
- Fixed an issue where the current playback position made available to 3rd party apps was incorrect after changing tracks
- Fixed an issue with FAB position in artist/album detail screen on older devices
- Fixed an issue where the artist/album list sometimes showed as a two-column grid
- Fixed an issue where inverted notification icons weren't very visible on devices running API < 24
- Fixed an issue with 'breadcrumbs' in Folder screen
- Fixed an issue where the equalizer toggle didn't change color when set to 'off'
- Fixed a crash when choosing to invert icons on API < 21. This feature is no longer available on such devices
- Fixed several folder browser crashes
- Various other crash fixes
1.6.4
- Fixed a bug where choosing to play a song from the folder browser ended up playing the whole library (and related issues)
- Fixed a crash when editing tags/setting ringtone from folder browser
- Fixed a crash when attempting to view/edit tags for certain file types
- Fixed a crash when sorting by 'album name', then attempting to view the contents of an album
1.6.3
- Fixed a bug where Podcasts, music stored in the /podcast/ directory and the Podcast playlist didn't show up
- Added 'fuzzy search' algorithm. Search results are now sorted by how closely they match the query. Thanks Andrew Neal for his help with that.
- Added option to share songs from more places (via song context menu)
- Fixed an issue where 'most played' wasn't sorted by 'default'
- Fixed an issue with search - incorrect results showing up
- Show track number in detail view (when viewing albums & sorting by default/track number
- Show disc number in detail view, for multi-disc albums
- Added option to change grid column count
- Added option to invert notification icons/text (Settings -> Display)
- Fixed crash when opening queue
1.6.2
- Reinstated playlist sorting
- Fixed tag editing issue for files on SD card
- Fixed an issue where the queue didn't automatically scroll to the current song
- Fixed order of playlists in drawer/playlist screen
- Added fast-scrolling to queue
- Fixed a crash when reloading the queue
- Various other crash fixes
1.6.1
- Fixed crash when selecting colors
- Fixed crash when toggling shuffle
- Fixed issue where queue covered play/pause/prev/next buttons
- Fixed location of queue shuffle button on pre-lollipop devices
1.6.0
Album-artist support.
Finally, after more than 3 years of procrastination, excuses & failed attempts, album-artist support has arrived for Shuttle. I've managed to work around the shortcomings of the Android
MediaStore. So, artists/albums who share the same album-artist will now be grouped together. Hooray for compilation albums!
Major performance improvements:
Since Shuttle is backed by the Android Media Store (a sqlite database), it spends a great deal of time making 'queries' to that database. These queries can take a bit of time, and in some
unexpected places, these were blocking the app from doing more important stuff. These were just some bad-practice remnants/old code from long ago. Anyway, this whole approach has been rethought,
and Shuttle is now backed by a library called RxJava. All of this intensive work has been moved into the background, and the amount of repeat work has been significantly reduced.
I've also done some digging into some of the more subtle performance issues plaguing Shuttle. I've learnt a lot in the process, as well as applying a lot of new techniques I've picked up over the
last couple of years of working as a professional developer - so you can expect to be much more performant now, and going forward.
Lastly, with all these changes going on, I've made Shuttle's codebase a lot easier to work with. So fixes & features should be easier to implement. (I say this every time!)
New artwork picker (Shuttle +):
You can now view all the possible artwork sources for an album/artist, and select the one you prefer.
Launcher shortcuts:
Added Android 7.1 launcher shortcuts (play, shuffle all & folder browser). Thanks to Andrew Neal for his contribution.
Shared element transitions:
Finally, a bit of animation. Shuttle now uses some (admittedly basic) Material style animations when transitioning between screens. Hopefully there's more of this to come.
Artwork loading/downloading changes:
Lots of work has been done on the artwork loading (more info below). Note: Cache cleaners like 'Sd Maid' will delete Shuttle's artwork.. My recommendation is to avoid cache cleaners and instead
allow the Android system to manage caches the way they're meant to be managed!
Folder browsing:
- Improved the folder browser media scanner. Now actually works when scanning a directory.
- Fixed folder browser crash when attempting to play empty folder
Playlists:
- Fixed an issue where playlist sort order was not preserved
- Fixed an issue where deleting playlist items had no effect
- Empty playlists don't show up in the nav drawer
- Playlists are now exported to a folder with a .nomedia file, preventing duplicate playlists from being created.
Genres:
- Empty genres no longer show up in the genre list
- Show album & song count for genres
- Remove empty genres on launch
Artwork:
- Fixed an issue with the 'download all' artwork option - where it only downloaded when on WiFi and 'automatic downloading' was enabled
- Fixed an issue where notification artwork was downloaded each time the notification changed
- Fixed an issue where prefer embedded artwork actually preferred folder artwork, and vise-versa.
- Added some logic to use the largest-filesize artwork when faced with a choice between cover/album/artwork.jpg/jpeg/png.
- Fixed an issue where 'download artwork' option only downloaded album or artist images, instead of both
- Significantly improved speed of 'download artwork' option in artwork settings
- Ensure ridiculously large images from Last.fm are downsized before being stored in the cache (nothing bigger than 2048px)
- Various other improvements to prevent the artwork cache from growing unnecessarily large
- Fixed an issue where 'download artwork' popped up again if you crashed the app from 'recent tasks'
Blacklist/Whitelist:
- The blacklist and whitelist have been improved. You can now blacklist albums & artists. Also, if all songs belonging to an album are blacklisted, that album no longer shows up in the
listing screens.
Various:
- The tag editor has had a bit of a facelift
- The 'suggested' screen has been overhauled. Shows more suggestions via horizontal lists.
- Search has been rewritten. Should fix issue where search results didn't show up for some users.
- Added selection count to multi-selection toolbar
- Integrated Firebase Analytics. Shuttle now anonymously tracks events like number of screen views, which tabs get used the most, which colors are used the most, etc. No personally identifiable
information is collected. This information will be used to help make informed decisions about future changes to Shuttle.
Fixes:
- Fixed ChromeCast track skipping issue
- Fixed an issue where 'shuffle all' resulted in the same song being played first each time
- Fixed multi-selection highlight issue for album-artists
- Too many crash fixes to detail here.
- Fixed an issue where the color palette didn't change for upgraded users
Other
- Accessibility improvements
- Updated translations
1.5.15
- Added 'check for duplicates' when adding to playlist
- Fixed notification layout issues on G3 & G4
- Fixed issue where changes to artwork settings weren't persisted
- Potential fix for Now Playing artwork aspect ratio issue
- Crash fix for Alcatel OneTouch Pop devices
- Fixes for the most common crashes reported via Crashlytics
1.5.14
- Fixed a major issue where the app would hang/crash when attempting to play from the 'most played' playlist, in some specific situations
- Remove items from 'most played' when they no longer exist in the MediaStore
- Updated notification style for Android N
- Fixed an issue where widgets artwork didn't change to placeholder when artwork isn't found
- Fixed a crash specific to OPO devices running Android 6.0.1
- Fixed a crash occurring when headset 'play' button is pressed but the app doesn't have required permissions
- Fixed a crash occurring when moving playlist items
- Fixed a crash occurring when attempting to update the play count
- Fixes for the most common crashes reported via Crashlytics
1.5.13
- Added album art to 'up next'
- Added custom color picker
- Fixed an issue where when pausing the app and swiping away from recents, the notification came back after a couple of seconds
- Completely overhauled artwork loading/downloading. Reduced memory usage & improved scrolling performance. Note, you will have to re-download your artwork.
- Added 'album-artist' metadata to the lockscreen (may be used by some devices)
- ChromeCast updates/fixes
- Various behind the scenes changes to navigation.. Should feel a bit more fluid when changing screens.
- Fixed an issue where artist didn't show on some bluetooth devices
- Fixed a line break issue for lyrics
- Replaced ListView with RecyclerView everywhere. Nicer animations when sorting, changing view types etc.
- Fixed an issue on older Android versions where the notification 'x' didn't work
- Fixed an issue where message didn't display when setting sleep timer
- Fixed an issue where collapsing the queue didn't set the title back to 'library' (and similar related issues)
- Fixed issue when attempting to create playlists from folder browser
- Fixed issue where queue FAB would disappear when exiting & returning to app
- Fixed issue where queue would close when rotating screen/exiting & returning to app
- Fixed an issue where the play/pause icon had a gap in the middle on some devices
- Fixed a crash occurring when tag editor finishes editing
- Fixed an issue where now playing screen didn't show when returning to app
- Fixed an issue where the action bar was transparent when returning to app
- Fixed an issue where the 'choose tab items' drag & drop didn't work properly for some users
- Fixed issue where sorting showed up multiple times in menu
- Fixed issue where ringtone couldn't be set on Android M
- Fixed a crash occurring when exiting detail screen while scrolling
- Fixed crashes when retrieving artist & album bios
- Fixed a crash when editing tags
- Fixed issue where artwork disappeared from now- when rotating.
- Fixed issue where 'download artwork' stopped before it was finished
- Fixed issue where double tapping for lyrics didn't open lyrics
- Fixed an issue where 'remove from queue' didn't remove from queue
- Fixed an issue where images disappeared from lists and didn't reappear until you scroll away and back again
- Fixed an issue where albums didn't show up in the artist/playlist/genre view if the songs loaded after the albums did
- Fixed an issue where 'show file names' wasn't persisted in folder browser
- Minor Search UI fixes
- Removed 'tint status bar' option
1.5.12
- Fixed a crash occurring when trying to set a ringtone
- ChromeCast related fixes/improvements. Adjusting ChromeCast volume works much better now.
- Fixed some text color issues. The toolbar/actionbar title color is now pure white, instead of semi-transparent.
- Fixed a styling issue for the 'add to queue' button on the now playing screen on large, landscape oriented devices when ChromeCast is not available.
- Attempt to fix a crash occurring on Amazon devices when attempting to access favorites playlist
- Fixed an issue where viewing an artist with no albums showed a blank space where the albums would otherwise be
- Fixed some permissions related crashes
- Various other minor crash fixes
1.5.11
- Fixed default album & artist sort order (no longer alphabetical)
- Some minor performance improvements
- Fixed a major crash affecting anyone using dashclock/apps which integrate dashclock
- Various music playback related crash fixes
- Fixed an issue where directories containing a period displayed an incorrect name
- Fixed 'green tint' artwork issue
1.5.10
- Added support for Android 6.0 Marshmallow
- Moved 'shuffle all' button from settings menu to above 'songs' list
- Fast scroller / alphabet indexer now respects sort order
- Shuffle all now respects whitelist/blacklist
- Rewrote search. Fixed issue where no results showed up. Made Search open instantly on click
- Added search word highlighting (thanks Andrew Neal)
- Show voice search query in search view
- Major folder browser work. Go see for yourself!
- Added a 'snackbar' asking you to rate the app. Shown for 15 seconds on the 10th, 50th, 100th, 150th, etc. time you launch the app. This will never show again if you click 'rate it' (you don't
have to leave a rating)
- Added option to tint navigation bar
- Dark themed changelog!!
- Fixed whitelist checkbox padding issue
- Reduced APK size from ~7.5mb to ~5.0mb!
- Sorting overhaul
- Added sorting options to 'detail' activity
- Added Wake Lock permission request on Marshmallow - wake locks are required for Shuttle to run (the MusicService needs to be awake to play music, among other things)
- Updated the item selection ripple animation
- Updated the dialog for deleting multiple artists, albums or songs (thanks Andrew Neal)
- Updated the changelog to include this message (Meta)
- Updated launcher icon (thanks Rink)
- Re-added close button pre-lollipop
- Moved settings menu to drawer.
- Added bluetooth 'resume on connect' option. Like headset, probably doesn't work unless Shuttle is already running.. TBC
- Removed support for API versions below Jellybean
- Various UI tweaks in accordance with Material Spec
- Background service timeout increased from 1 to 5 minutes
- Previous button added to notification. Swipe when paused to dismiss.
- Playlists moved to collapsible heading in drawer
- Re-added 'remove from playlist' option
- Updated translations
- Added option to cancel artwork downloads from notification
- Updated playlist view. Fixed issue where playlist items couldn't be removed
- Fixed issue where moving items in list caused a momentary flicker
- Scan library option has been removed. This literally did nothing. You can now scan files via the folder browser.
Performance
- Major performance improvements. Increased number of concurrent background tasks
- Artwork downloading fixes & improvements. No more >100% downloads.
- Flattened the view hierarchy for lots of ListView items. (General performance improvement)
- Fixed several memory leaks
General Fixes
- Fixed issue where tapping playlist items wouldn't play them
- Fixed off-by-one when using multi-selector for playlists
- Fixed some delay issues when hitting play/pause
- Fixed issue where tapping a song would play a song several places above
- Fixed issue where 'now playing' artwork was blank when launching app
- Fixed issue where playing indicator didn't update when track changes
- Fixed a couple of cursor leaks
- Fixed dialog background color issues
- Fixed issue where tabs would get cut off
- Fixed issue where artwork wouldn't update from the tag editor
Crash Fixes
- Fixed Chromecast crash
- Fixed playlist shuffle crash & playlist slideshow crash
- Fixed 'set as ringtone' crash on pre Marshmallow
- Fixed several network crashes
- Fixed several folder browser crashes
- Fixed search crash
- Fixed a crash occurring when attempting to play songs
- Fixed a crash when trying to rename a folder
- Fixed several tag editing crashes
- Fixed an equalizer crash
- Fixed crash when attempting to open 'recently played' list
- Fixed a bunch of crashes to do with sorting
- Fixed a crash when trying to save an auto-generated playlist as m3u
- Fixed a navigation drawer crash
- Tons of various unspecified crash fixes
1.5.9
- Fixed the skip/repeat bug
1.5.8
- Fixed (again) an issue where tracks repeat/skip for no apparent reason
- Fixed (again) a crash occurring with LG QuickCircle activity
- Fixed 'share audio file' bug.
- Added data usage warning dialog before starting manual artwork download.
- Various minor crash fixes
1.5.6
- Fixed Last.fm artwork downloading issues
- Lots of crash fixes
- Added a few extra color schemes for the free version users :)
1.5.5
- Major equalizer overhaul. Reduced EQ 'popping' & fixed issue where EQ turns off after a track ends. Added virtualizer.
- Whole bunch of crash fixes
- Fixed issues where incorrect artwork displayed on the 'now playing' screen
- Fixed an incredibly annoying bug where pressing the close button on the queue would collapse the now playing panel instead of closing the queue
- Updated translations
- Updated the scrobbling icon
- Re-enabled tag editing on files stored on the SD Card on Android 5.0+
1.5.4
- Added 'black' base theme
- Crash fixes
- Fixed some device rotation issues
- Fixed an issue where the queue button would disappear
1.5.3
- Artist/Album & Genre detail screen redesign.
- Huge image caching rewrite.
- Added option to view lists using palette, cards, material style grid, or lists (see 'view as' option).
- Massively reduced memory usage.
- Added song info dialog.
- Added option to circumvent MediaStore when retrieving artwork from tags.
- New queue UI!
- Added option to blacklist & view song info in queue.
- Fixed suggested layout alignment.
- Updated theme colours to match Material design spec.
- Fixed issue where system equalizer would not launch on some devices.
- Fixed issue where multi-selected items in the queue didn't show as selected.
- Fixed theming issues for edit text fields.
- Added option to view & edit white/blacklists, and update whitelist. (Via settings)
- Added option to restore purchases from settings, for those having trouble with Shuttle recognising their upgrade.
- Added circular ripple effect behind image buttons.
- New animated play/pause button. Thanks to Alex Lockwood for making that easy.
- Removed nonsensical hamburger animation.
- Major performance improvements.
- Various bug fixes.
1.5.2
- Added QuickLyric support for online lyrics (double tap the artwork in the now playing screen)
- Navigation drawer overlays status bar on Kitkat
- Fixed Toolbar height issue in album/artist activity
- Fixed major issue on older devices, where Toolbar wasn't visible in artist/album activity
- Fixed issue where home button didn't do anything when 'now playing' screen is visible from the main screen
- Fixed fast scroll issues
- Reworked the way darker color variants are determined
- Materialised the Navigation Drawer.
- Reinstated option to disable lockscreen artwork. Note that this is just the artwork - controls aren't optional anymore..
- Fixed Lollipop headset/wear/bluetooth controls
- Fixed contextual actionbar color issue
- Various crash fixes
1.5.1
1.5.0
- Material redesign!
- Built in embedded-artwork scanner
- Option to download artwork from iTunes instead of Last.fm
- Removed MusixMatch support forever
- You can now upgrade the free version via IAP.
- New 'support' menu: Version info, e-mail me, link to the FAQ, DONATE ALL YOUR MONEY!
- Lots of behind-the-scenes improvements
- Removed Google Analytics
- Fixed issue where tags wouldn't save when changing text case
- Added lyrics & comment editing to tag editor
- Brought back the sliding panel. Phones only
- Updated icon
- Added new 'suggested' view
- Fixed a huge number of crashes & bugs
- Made the sliding up panel more responsive
- Some major performance improvements
- Updated translations
1.4.10
- More bug fixes. The app should crash far less frequently, however I'm still prioritising bug fixes, and I will be keeping a close eye on remaining bugs
- Updated translations.
- Significantly reduced RAM usage
- Performance improvements
1.4.9
- Tons of force closure fixes
- Added accessibility support for on screen buttons
- Added support for Crashlytics. Expect the app to become much more stable by the next release
- Added new 'detail' screen for genres. You can now view genres by album.
- Added preliminary support for Android 5.0. Note that Lyrics via MusixMatch are not available on 5.0 until MusixMatch update their sdk.
1.4.8
- Fixed settings background color issues
- Fixed issue where closing app from search would cause music to stop playing
- Playing a song from search now adds all other songs from the list, and turns shuffle on automatically
- Playing an individual song from voice search now adds all other songs by the same artist to the queue (and turns shuffle on)
- Playing any item (artist/album/song) from voice-search now turns shuffle on
- Fixed a bunch of force close bugs
- Fixed issue where widget icon colors changed depending on the base theme
- Added option to clear favorites & most-played
- Added Google Analytics. No personal data is collected. You may opt out via the settings menu.
1.4.7
- Fixed some force close bugs
1.4.6
- Updated settings layout
- Fixed some theme issues
- Major UI update
- Added Material icons
- Added swipe controls to mini-player (swipe left to skip, right to go back)
- Added SeekBar to mini-player
- Added more color options
- Fixed some bugs
- New shuffle/queue system
- Updated translations
- ChromeCast icon no longer shows when ChromeCast is not available
- ChromeCast artwork correctly updates on track change
- Themes apply automatically when changing colors
- Fixed issue with 'invert widget' option
- Newly themed settings menu
1.4.5
- Fixed force close error introduced in previous update
- Fixed issue where Gmail style placeholders would only display english characters
1.4.4
- Updated icon
- Fixed dropdown menu style
- Added on-screen ChromeCast volume controls
- Various ChromeCast related fixes
- Added Gmail style placeholders to widgets & notifications
- Added warning prompt to 'delete artwork' button
- Updated translations
1.4.3
- Fixed tag editing issue. Batch-editing artists or albums now works again, instead of just changing the tags of one song
- Fixed crash caused by 'Gmail style' placeholders
- Removed 'android icon' from empty Gmail-style placeholders when the text is unknown
- Updated translations
- Added option to pause when bluetooth is disconnected. (On by default)(Untested)
1.4.2
- Fixed issue where wrong artwork was displayed
- Brought back 'Gmail style' placeholders (disabled by default, go to settings -> artwork to enable)
- Fixed random force-closure error
- Fixed bug where 'default page' was not respected
1.4.1
- Fixed settings crash
- Minor bug fixes
1.4.0
- Significantly reduced app size
- Removed cards view for list items
- Tag editing fixes
- Added LG QuickCircle support
- Completely overhauled theme system
- New widget options
- Fixed crash when opening podcasts
- Removed STICKY_BROADCAST permission
- Various bugfixes
- Fixed issue where artwork wouldn't display on first run
- Updated translations
- Reduced time between headset disconnecting and music pausing
- Fixed issue where album art would get out of sync
- Removed gmail style placeholders
- Fixed issue where miniplayer would show up even when the queue was empty
- Moved grid/list view options from the settings menus to the menu of the artist/album lists
- Fixed issue where playback would stop after closing the app (thanks Victor)
- Added option to show/rearrange items in the main display page
1.3.23
- More bug fixes
- Does anyone read these? Anyone at all?
1.3.22
- Removed giant blue icon placeholder
- Add settings option to disable seekbar thumb
- Some ChromeCast related resource management improvements
- Potential fix for bluetooth receivers displaying outdated track info
- Fixed a bunch of crashes
- Access lyrics by double tapping artwork, rather than pressing the lyrics menu option
- Added option to clear all recents
- Removed 'sort menu' for playlists where sorting is not allowed
- Fixed play/pause button color in hybrid theme
- Updated translations
- Added 'most played' playlist with play count!
- Fixed issue where wrong lyrics would display
- Added option to share the currently playing audio file
1.3.20
- Add alphabetical section indexer
- Fixed several force close issues
- Updated translations
1.3.19
- Fixed issue where artwork would disappear and have to be re-downloaded (resets current artwork)
- Search music folders on device for artwork
- Added seekbar 'thumb' for easier scrubbing
- Some minor theme changes. Light theme is more light, dark theme is more dark.
- Add option to long-press playing screen 'header' to see options to navigate to current artist or album
- Improve artwork quality
- Translation updates
1.3.18
- Fixed force closure when using tag editor
- Fixed force closure when accessing lyrics
- Fix issue where lyrics could be opened multiple times, overlaying itself each time
1.3.17
- Major ChromeCast bug fix. ChromeCasting should be much more reliable now.
1.3.16
- Huge translation updates. Help translate
- Fixed bug where notification would stop responding
- Fixed a force closure occurring when attempting to close the notification
- Fixed some potential memory leaks
1.3.15
- Fixed a bug where the notification wouldn't show as 'paused' after pausing a song
- Several force close fixes
1.3.14
- Fixed an issue on some devices where 'Playing Screen' would underlay the ActionBar (instead of sitting below it).
- Fix animation bug when changing songs
- Fast-scroller now displays in the album list again
1.3.12
- Chromecast fixes
- The notification is now hidden when the app is open
- Fix crash occurring when deleting folders containing songs/artists/album names with apostrophes
- Improve artist artwork resolution (may require clearing artwork cache)
- 'Rescan' option should work more reliably
- Fixed bug where sort options weren't working
- Improved app responsiveness
- Various force close fixes
1.3.9
- Add option to save playlists as .m3u (saves to /sdcard/playlists/)
- Use system background color for notifications
- Fix issue where lyrics wouldn't update on track change
- Fix issue where 'restrict library' (now whitelist) button doesn't do anything
- Fix theme issues
1.3.8
- Fixed a bunch of force closures
- Minor UI improvements
1.3.7
- New pink theme!
- Various UI changes
- Added chromecast support
- Fixed issues with tag editor not opening
- Choosing new album art is more reliable now
- Improved scrolling performance... again
1.3.6
- Lots of force close fixes
- Lists remember their positions once again
- Fixed issue where you had to press the previous button twice to go back a song when on shuffle
- Fixed issue with swiping album art to the previous track
- The seekbar is a little smoother
- Fixed issue with album art 'flickering' when resuming the app
1.3.4
- New lyrics view. Press settings->lyrics for a much more intuitive lyrics viewing experience
- Make page indicator slightly lighter on dark theme
- Cleanup some code methods (hopefully improves performance)
- Add last.fm info for artists & albums
- Re-instate ability to disable lockscreen controls
- Add translucent status & navigation bars
- Updated icon
1.3.3
- Correctly theme Contextual Action Bar
- Fix Search crash
- DSP manager fixes
- Add ability to blacklist songs (see overflow menu)
- Make 'download artwork' option download twice as fast
- Layout improvements & optimisations
- Added whitelist option to folder browser. (Press settings -> 'Restrict Library')
- Added Chinese translations
- Updated Spanish, Italian & German translations
1.3.2
- Fixed several force close issues
- Changed 'favourite star' colour on dark themes
- Made non-inverted widget text all-white
- Fixed 4x4 widget not displaying placeholder image when no artwork is available
- Fixed error in album art chooser
- Re-enabled DSP by default
1.3.1
- Added folder-browser!
- Enable 'overflow' options to search items
- Favorite icon re-enabled
- Gmail-style placeholders are now cached & no longer change color all the time
- Equalizer fixes (DSP manager shuts down if Shuttle EQ is in use - less glitches & DSP crashes)
- Add support for Google Now voice commands (play x artist/album/song)
- Fix sleep timer display issues in Android 4.4 (KitKat)
- Add option to edit album-artist tag in tag editor
- Display duration/artist/album information for songs in the Genres category
- Add lockscreen seekbar controls for Android 4.4 (KitKat)
- Move overflow icon slightly in to avoid fast-scroller overlap
- Fix issue where search results displayed an empty image frame for song items
- Updated Russian translations
1.2.8
- Artwork resolution improved (may need to clear artwork cache)
- List scrolling performance greatly improved
- Improved landscape layout
- Some fixes for Android 4.4
- More force close fixes
- Sort albums by artist fixed
- Rearrange some settings options
- Brought back the 'hybrid' (mixed) theme!
- Fixed tag editor. Editing whole artists/albums now works again.
- Improved tablet layouts
- Add Korean translations
1.2.5
- Added support for embedded lyrics
- Added album artwork chooser to tag editor
- Potentially resolved Galaxy S3 headphone-speaker bug
- Update German and Italian translations
- More force-close fixes
- Minor UI fixes
- Remove option to disable cards-style
- Moved themes to 'interface' menu
- Fixed sleep timer 'wait til end of song' function
- Fixed equalizer crash
- Fixed issue where non-functional equalizer band was being shown
- Fixed bug where changes to queue order were not being respected
- Improved list scrolling performance
1.2.4
-
New themes!
- Improve memory usage of music playback service
- Fixed a lot of bugs
- Podcasts playlist fixed
- UI improvements
- Increased pressable area of overflow (3 vertical dots) icon
- New display option - show artist/album as grid or list
- New artwork option - ignore embedded/locally stored artwork
- New headset option - enable/disable gapless playback.
1.2.3
- Revert back to uncropped album art
1.2.2
- Swipe to dismiss from playlist reinstated (was accidentally removed)
1.2.1
- Sleep timer - option to play last song to end. Otherwise, music fades out when time is up.
- List sorting options now work correctly across all categories
- Tag editing improved (should work more consistently)
- Some major force close errors resolved
- Enqueue fixed - when shuffle is on, enqueue no longer turns shuffle off
- Portuguese-Brazilian translation updates
1.2.0
- Playlist items moved to the navigation drawer
- Added Portuguese-Brazilian & Turkish translations
- Option to delete currently playing item, and save queue as playlist
- Empty lists now display empty message
- Scrolling performance improved
- Undo option added to swipe-to-dismiss & sensitivity reduced
- 4x4 Widget
- Enqueue now works even when shuffle is on
- Swiping the album art no longer ignores shuffle (will momentarily display incorrect album art)
- Interface settings menu added. Option to stay on same page after pressing a song.
- Seekbar visibility improved in dark theme
- Force close error occurring when artist name contains an apostrophe (e.g. Lil' Wayne) fixed
- Various other force close errors fixed
1.1.0
- Reset version number to v1.1.0. (versioning will make more sense from now on).
- Prevent navigation drawer from overlaying itself on rotation
- Fix resume on connect
- Fix several force close bugs
1.5.9b
- Bugfixes
- Major folder browser improvements
- New 4x1 alternative widget
1.5.8b
1.5.5
- Cards style is now optional via settings menu
- Same-name albums no longer use same album art
- Equaliser improvements & crash fixes
- A number of long-standing force close errors fixed
- Use AppCompat ActionBar instead of ActionBarSherlock
- Reduce APK size substantially
- Add swipe to remove for playlists
- Add option to share current song with #NowPlaying
- Add musiXmatch lyrics plugin
- Navigation from Now Playing -> Album -> Artist re-introduced
- Improved artwork downloading including automatic downloading
- Overhaul search
- Fast forward/rewind controls added
- Make 'gmail' style placeholders optional
1.5.0
- Minor update - bug fixes including:
- Reduce scrolling lag
- Fix force close when opening the app from various places
- Potentially resolved equalizer force close issue
- Another minor update to come soon, to make gmail style placeholders optional.
1.4.9
- Multi select functions! Batch add to playlist, queue & batch delete
- New gmail style placeholders everywhere!
- Improved image thumbnail resolution
- Vastly improved scrolling performance
- Many UI improvements
- New navigation drawer
- Bug fixes & code optimisation
- Light theme available for Shuttle (free)
- Improved tablet & landscape layout
1.4.2
- Artist view fixed
- 'Folders' category removed (unfinished)
- Widget improvements
- Resolved some FC bugs (particularly on smaller screen)
1.4.1
1.4.0
- Added 4x2 widgets to Shuttle (free).
- Improved sleep timer layout on smaller screens
- Improved Bluetooth support
- Add Pebble support
- Added %MTRACK variable for Tasker
- Fix artist image deletion issues
- Resolved some ANR (Application Not Responding) issues when the track changes
- Improved translations
- Add Spanish, Dutch, Romanian, Polish & Hungarian translations
- Removed Chinese, French & Arabic translations (until improved translations are available)
- Added 'clear queue' option
- Added tag editing (a more robust album art editor coming soon)
- Fix album art resolution in the 'recents' category.
1.3.7
- Fixed Artist/Album downloader (% display & other issues)
- Rotation issues resolved
- Fixed duplicate provider issue (will have to re-download Artist images, sorry)
- Updated Russian translations
- Reduced overdraw (improved scrolling performance)
- Sleep timer UI overhaul
- Added list sorting options
1.3.6
- UI Overhaul
- Some minor bug fixes
- Russian Translation Overhaul
- Italian Translation updates
1.3.5
- Fixed 'delete' option
- Included ability to rearrange/remove playlist items
- Various bug fixes
- Performance improvements
1.3.2
- Fixed some force close issues
1.3.0
- Add 4x2 widget
- Add 'favourites' option (star button)
- Add 'recents' category
- Add genres category
- Improved notification controls
- DashClock Support
- Previous button now works in shuffle mode
- UI improvements
- Added sleep timer
- Swipe animation added (don't swipe too fast)
- Tentative language support (feel free to contribute, or let me know if something's amiss)
1.2.6
- Added DSP support back in
- Some more equalizer fixes (not 100%, but almost)
- Added 'bass boost' option
- Changed name from AMP to Shuttle (trademark issues)
1.2.5
- Added search function
- Fix equalizer crashes
- Fix 'previous' button behaviour
- Added 'all songs' item for artists
- Added themes
- Added scrobbling support (via Simple Last.FM scrobbler)
- Added widget transparency options
- Fix long press errors
- Added 'info' screen
- Reversed gesture controls
- Various bug fixes
- Remove DSP manager support (DSP manager does not play nice with the equalizer)
Licenses:
Shuttle+ uses the following open-source libraries:
RxBroadcast
Copyright 2015 Adam Cantrowitz
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
RxAndroid
Copyright 2015 The RxAndroid authors
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Butterknife
Copyright 2013 Jake Wharton
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Gradle Play Publisher
The MIT License (MIT)
Copyright (c) 2014 Christian Becker
Copyright (c) 2014 Björn Hurling
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
RxRelay
Copyright 2014 Netflix, Inc.
Copyright 2015 Jake Wharton
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
RxJava
Copyright 2013 Netflix, Inc.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
ChromecastCompanionLibrary-Android
Copyright 2014 Ali Naddaf
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Parallax Header
Copyright 2014 Andrew Neal
NanoHttpd
Copyright (c) 2012-2013 by Paul S. Hawke, 2001,2005-2013 by Jarno Elonen, 2010 by Konstantinos Togias All rights reserved.
- Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
Neither the name of the NanoHttpd organization nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
HoloColorPicker
Copyright 2012 Lars Werkman
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Apollo Music Player
Copyright 2013 Andrew Neal
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
FileBrowserView
Copyright 2014 Saravan Pantham
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
SwipeToDismissUndoList
Copyright 2013 Tim Roes, Roman Nurik
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
LetterTileProvider
Copyright 2014 Andrew Neal
Material Dialogs
Copyright (c) 2014 Aidan Michael Follestad
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Floating Action Button
Copyright (C) 2014 Jerzy Chalupski
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
TagLib
Shuttle uses TagLib, licensed under LGPL
http://taglib.github.io/
jAudioTagger
Shuttle uses jAudioTagger, licensed under LGPL
http://www.jthink.net/jaudiotagger/
Shuttle+ also uses the android support library, (android-support- v4), and various elements from the Android Open Source Project (AOSP):
Copyright (C) 2013 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.