Thursday, April 25, 2013

The State Of Desk Clock Plus

Earlier in the month when the Yahoo geocoder I was using got deprecated, I had to go in to panic development mode (something I'm used to sadly).  Once the issue was found, I came here to make a post about what the problem was and to let anyone who cared to know the issue was fixed and the update was available.  That's when I realized that I had done three posts in a year... and I got to thinking that there hadn't been that many updates to the app in that period either (11 total and most of them between April 2012 and Aug 2012).  Most of the later updates were crowd sourced translations and not new features or fixes.  I figured I better write something just to get me going again.

First, let me say that this isn't a dead project (unlike Launch Bar which has been replicated with features in the OS).  I haven't quit on the project, it's just been pushed to the background.  If you've looked at the About Me page, you'll note that that I say in my spare time I do Android development.  As a father of two boys and a new homeowner, my spare time is pretty much reduced to my lunch hour at work.  This fall, I took on an a task for a non-profit model railroad museum that I volunteer for.  So during my lunch hours of late, I've been trying to foster a g+ page for +The Western Pennsylvania Model Railroad Museum, redesign their website and get all the Google services working together.

Before going forward, let me explain a little bit about Desk Clock Plus as it exists now.  As you can tell by the look of it, it's based off the 2.x stock clock app.  In fact the alarm code is straight from the 2.2 Google source which can explain why some people have problems with the alarms and the app crashing on newer versions.  One of my main goals was to break up the code so that I could build multiple APK files (one per OS version) and still support as many devices as possible.  I learned about Libraries and started breaking up the code which lead me down a rabbit hole that there was no escaping.  After many attempts, I finally got everything to a point where I could compile the project and it crashed on load.... naturally, frustration kicked in and that's about the time when the Web site redesign for the nonprofit started up.

Some where along the line, I was helping a user with a question when the light bulb came on and I realized that I was trying too hard with making everything work and what I need to do is draw a line in the sand and start over.  As of this post, 66% of people who have Desk Clock Plus installed are running Android 4.0+ (the Play store tells me that only 41% of the apps in the Tools section are running on 4.0+).  So what does this mean?

The existing APK will be used for any device running any thing below 4.0 and will probably not change at all.  At some point in the near future (hopefully), I'm going to start a new Android project, bring in just the base layout and start coding from scratch.  Starting with the base layout (it kinda looks like a tennis court), I want to implement the same swipe and hide system for all four of the areas.  Along that line I would also like to allow the user to decide what panels they put where (Dock buttons on top, weather on the bottom, etc).  Even though I'm trying to avoid re-using code, there are somethings that are done very well and can be reused.

In regards to things that aren't done well, one of the first things I want to do is to implement OAuth.  This should start with getting the Google Images working correctly for both public, private and Albums shared to you.  Then that should be the gateway to connecting into the other Google services (Calendar being the next likely target).  I've also looked at using Flickr and 500px as background image sources and yes, setting a static image that's not your background.

As for things that are probably considered bugs, I have a list of things including:

  • Dimming the soft buttons (and I'm hoping the back light one devices with buttons).
  • Better scaling of images
  • Main Screen dim
  • A better color picker
  • Only keep awake if plugged in.
  • A better slide show

The in app purchase (IE freemium) system seems to be working well for me.  I will keep the app free, but things that go beyond basic that maybe not everyone would want or need will cost a little extra (ie the dock configuration).  This list isn't set in stone and may or may actually be free I'll cross that bridge when I get there.

  • The above mentioned panel configuration.
  • Improved weather information
    • Multiple locations
    • Forecast (3 - 5 days depending on what I can get)
    • Weather details screen
  • Enhanced Background Images
    • Use User X's pictures
    • Get me pictures tagged with X
    • 3rd party sources (Flickr, 500px, ex)
  • Basic Shuffle Music player
    • Randomly play music from this folder / play list
    • Google Music Streaming*
    • Pandora*
  • Enhanced Alarm
    • Play this play list on alarm
    • Launch App on Alarm
  • Daydream
    • This is the feature in 4.2 that works like a screen saver that will resolve some requests for the App to launch when you plug it in.

* A little note about integrating with Google Music and Pandora... Both of these services do not have a public API, however, some smart people have hacked together stuff that apparently works.  So purchasing the music player will come with those features, but I will not guarantee them.  So, you'll be buying my music player and getting those other features as a thank you.

Anyway, that's where things are right now.  When I get into Beta testing, I'll let the people who are part of the +Desk Clock Plus page know (this will also include free access to paid portions).

As always, if you have an idea or feature, feel free to let me know I can add it to the list.