Tuesday, December 9, 2014

1.9.7 (Beta)

1.9.7 (12/09/2014):
-Overflow button is now wider
-Album art will now change instantly in now playing if the view is not active
-Fixed crash when crossfading album art
-Fixed smart playlist editor crash in holo themes
-Fixed crash in theme preview
-Fixed other various crashes
-Fixed holo nav bar when set to right or bottom
-Fixed nav bar background color in Holo Colored Action Bar themes
-Fixed 'return to now playing' in holo themes
-Potential fix for crashes on 4.2 and 4.3
-Added Korean translation
-Updated translations

Wednesday, December 3, 2014

2.0 Beta 1 Released

2.0 has been in the works for about 5 months and I finally have something releasable.  There is still a lot more to do but its current state is good enough to use as a daily driver.  One downside to 2.0, is it requires Android 4.1 and higher.  The majority of GMMP users are 4.1+, so the decision was made in order to provide the best listening experience to the most about of users.  1.6.x will still be available for 2.3-4.0.4 users.  You might also notice the 2.0 betas will actually have version numbers in the 1.9.x range.  This is simply to make the bug reporting easier on me.

Anyway, the majority of the code base has been reworked, the holo themes were significantly improved, and this will be the first version of the new material based themes.  The material themes will continue to be improved in future betas.  I had also previously talked about the new Theme Builder that 2.0 will feature.  Due to some of the limitations with material themes, the majority of the builder is disabled.  What is enabled is a MASSIVE number of theme templates to choose from.  I am talking about 1000+ different themes, 8 different "styles" total.  There is also a "live preview" available so you can quickly see what a theme looks like.  Settings -> UI -> Theme Builder -> Load Template to access the templates.

Note: There is one known bug when changing themes that users should be aware of, but it is fairly minor. When changing themes some of the views might not load.  If this happens just back out of GMMP and launch it again.

2.0 Beta 1 will go live in a few hours.  To join the beta you need to do the following

1.9.6 (2.0 Beta 1) (12/04/2014):
-Massive UI overhaul
-Added theme builder (most customization is currently off, only the ability to change templates is enabled)
-Added experimental Material inspired themes (still a work in progress)
-Added 1000+ theme templates (8 different "styles")
-Added multiple select (long press now selects a list item)
-Added overflow button to each list item
-Added media store syncing (new files will automatically be scanned by GMMP)
-MediaPlayer now uses the gapless featurea added in android 4.1
-Added new scanner menu with new folder selection view

-Updated holo themes
-Major code cleanup
-Replaced many old systems with open source libraries
-Switched image loading to use Glide
-UI inflating now uses the ViewHolder pattern
-Replaced deprecated gallery with a view pager for the album art selector and skin selector
-Replaced CWAC TouchList View with DragSortListView to provide a smoother drag and drop experience
-Tag changes are now reflected everywhere

-Removed support for pre jelly bean devices
-Removed 'Always Keep Device Awake' preference
-Removed skin support (themes are replacing skins)
-Removed vertical seekbars used in equalizer view (the custom widget was too difficult to maintain)

-A bunch of bug fixes (so much has changed since 1.6.7 that it is too difficult to single out what specific bugs from 1.6.x were fixed)
-Resume on call end will no longer auto resume if something that would normally trigger an auto pause occured during the call (disconnect from BT or unplug headset)

Tuesday, November 25, 2014


Since Lollipop is rolling out to a few devices now, a pretty major playback bug was discovered so 1.6.7 was released to fix that.  Also expanded notifications should work correctly now.

I am hoping to get the first 2.0 beta done in the next few days.  There are just a few remaining bugs I want to get rid of before releasing it.  If its not done in the next few days, I still think it'll be ready by the end of the month.

1.6.7 (11/24/14):
-Fix for stuttering on Android 5.0+
-Fixed notifications for Android 5.0+
-Added French translation

1.6.6 (10/18/14):
-Updated target sdk to 21 (Android 5.0)
-Fixed notification background on 5.0+
-Disabled expanded notifications in 5.0+. The album art is not showing correctly, will try to fix this in GMMP 2.0.
-Added Greek translation

Saturday, November 15, 2014

2.0 Progress Update 4

Things are going well with 2.0 development.  I just about finished up the first version of the material theme.  I'm hoping to put out the first beta sometime at the end of this month.  There is still a bunch to do on the TODO list for 2.0 but the current build is very usable so I'd like to get people to start testing.

I made 2 videos to show some of the animations.  Keep in mind that there seems to be some bugs with the recording tool that comes with kitkat, so in parts of the video you will see some icons being the wrong color (or not there at all).  This only seems to happen when recording and not during normal use.  The first video is on an LG G2 which is why the font is a little different and the navigation controls at the bottom are white.  The second video is on a Moto X

Here are some screenshots:

Friday, October 31, 2014

2.0 progress update 3

Its time for another update.  A few weeks ago Google released the android 5.0 SDK along with the new updated compatibility with support for material design (partially) on pre 5.0 devices.  Google was kind enough to release this on a Friday so I had that whole weekend to play around with it and while it did provide some really cool things, it also broke a lot when it comes to a holo UI.  I lost about a half week getting GMMP's holo themes back to where they were before the sdk update.

Since then I have been working on the new material "inspired" themes.  The material design guidelines are great for the most part, but it definitely increases the amount of whitespace / wasted space.  Frankly on smaller screen sizes this is not a sacrifice I am willing to give up.  The preview shots later in this post are on a Moto G, so keep that in mind if you see some of the margins being smaller than they should.  I do plan on sticking to the spacing a bit closer for larger phones.  As for fonts, I tried out the suggested fonts (size/style) for lists that the guidelines state and it just looks off, so for now I am keeping what looks best.  I may down the line provide "cleaner/simpler" themes that really stick to the guidelines at the sacrifice of information display on the screen.  There is also the possibility of a cards UI option down the line too.  I had played with it and google made it pretty simple to add.

So here is the progress on the material theme so far.  To start I've add the side navigation drawer with the hamburger menu with the slick animation that everyone seems to love.  For some reason I cannot get the title in the toolbar to align correctly so its removed until I can figure it out.  I know its not just me because i've seen some other apps with the same issue.

I kept the same tabs from the holo themes except for Library.  This view will be have a view pager with Artist / Album / Song / Genre that you can swipe between.  The top levels will look similar to the holo theme, but once you make the initial selection it'll open a more detailed page with a nice image at the top (like play music).  I havent started on that part so there is nothing to show yet.

What i do have to show is the queue, browser, and effects view.  I have the search view converted over as well but I still have some more tweaks to that before I show any screens.

Over the last few months I've recolored GMMP's icons about 5-6 different times to switch alphas to match the backgrounds and I still was not happy with the final result, so instead of wasting time reediting the icons over and over, I wrote some code that will auto color the icons.  So in 2.0, I will be able to define a specific icon color/alpha for each theme and the users will also be able to change the colors of the icons as well.  One other thing to expect with 2.0 is many more icons.  Google was kind enough to release thousands of material design icons that developers can use freely.  Some of the screenshots above show them off.

Realistically, I dont think the first 2.0 beta will be out until december.  I am also fully expecting it to stay in beta for a long time.  This is such a major update that I want to get it right before its fully pushed to everyone on google play.

Friday, October 3, 2014

2.0 progress update 2

Just another update on progress for 2.0.  I will try to make a post every week or 2 since the majority of the work I am doing is UI related which leads to some neat screen shots.  Besides the following major points, there have also been a lot of minor tweaks to the UI.

Tinted status bar

Kit added the ability to make the status bar translucent, which allows the action bar color to be extended to the top of the display.  Any theme using a colored action bar theme will be able to enable the tinted status bar.

Theme Templates

With all the UI options that will be available, I want to make it as easy as possible for users to configure the look of GMMP.  So I have added theme templates which will automatically set all the UI settings to specific values.  There will be templates for all the current GMMP skins plus a bunch of new ones.  I will also add in the ability to save templates so the user can easily change back and forth between different themes.

Holo Dark White Template

New Scanner UI

The scanner was one of the first things written for GMMP (0.11 Alpha or earlier) and it was not the easiest thing to use.  I completely redid the scanner UI and made it much easier to select the folders you want the scanner to scan and ignore.

In addition to the new UI, I also added new file monitoring and syncing with the android media library.  GMMP now listens for new files to be added to the android media library and will kick off a scan when that does occur.  GMMP's library views will update with the new music within a minute of the files being transferred to the device.

That is it for now but here are some more screen shots

Monday, September 22, 2014

2.0 progress update 1

I have been hard at work on GMMP 2.0 over the last 2 and a half months and I finally am able to show off some of the changes so far.  Nothing here is final by far and will most likely be a bit different when a beta is finally released (there is no ETA on the 2.0 beta and it definitely wont be out until after android L gets released)

Improved Holo UI

There are many users that currently enjoy the existing UI and I did not want to drastically change the UI without providing a way to fall back to the old UI.  Material design looks fantastic but not everyone wants that.  I personally like the flat navigation / swiping between views, so this will stay around as an option.  I still wanted to give the holo UI a facelift so most of the layouts have been tweaked (to follow the UI guidelines) along with a bunch of new additions.

New Font

Roboto Light is now the default font (Roboto Bold happens to be used for the now playing metadata entries in this screenshot, but the rest is Roboto Light)

Overflow Menu

The long press context menu has been replaced with an overflow button

Multiple Selection

Long pressing a list item will now enable action mode (multiple selection). Play, Play Next, Enqueue, Add To Playlist, and Delete are the available actions for the majority of the views.

Improved Image Loading

In GMMP 1.6.x, all of the image loading was custom written because years ago when development started, there were really no libraries out there that handled image loading well.  GMMP 2.0 uses Glide for all image loading.  The difference is very noticeable.  Scrolling is smooth and images load much faster.

Background Blurring

As an alternative to the album art background option, there is also an option to blur the background.  I have been wanting to do this for a long time and was finally able to find an efficient way to do it.

Say goodbye to skins and say hello to the Theme Builder

Skins have been a huge pain to maintain.  In the past, most changes to the UI also required every single skin to be updated.  Each skin consisted of hundreds of layout and images, so even just creating a new holo skin with a different color was a lot of effort.  Because of this, I have decided to take a new approach to customizing the UI.  GMMP 2.0 will ship with a new Theme Builder to dynamically create the user interface.

Right now the builder has a few options but it will be expanded upon (some options may not make the final cut as well):

  • Base Theme: Holo Dark/Light, Holo Dark/Light with Colored Actionbar, and Material (not implemented yet)
  • Navigation Style: View Pager (GMMP 1.x style) or Sliding Menu  
  • Primary Accent Color
  • ActionBar Color (only works with the Colored ActionBar base themes)
  • Background Color

Note: Text color currently is linked to the base theme.

I know many users will not want to have to deal with all this so all these settings will be wrapped up into templates that can be used to build the UI quickly.

GMMP 2.0 is still very much a work in progress, but it is shaping up to be a huge improvement over 1.6.x