Friday, August 1, 2014

Does this still work...

...Why yes, it seems that it does! The updates here are few and far between (last post April 2013?!?!?) and the last update to the app was August 27, 2013?!?!!?  G+ posts have only been slightly better with the last one back in February.  I honestly should do another "State of the App" type post, but my time for today is limited.  So the short version of what happened goes like this (Starting in February):

  • Re-write started using Android Studio
  • Problems with Android studio kept development to a snail's pace
  • Something Super Crazy AWESOME happened
  • 100% of my time got devoted to that super crazy awesome thing
  • The super crazy awesome thing didn't pan out
  • Little bit of depression
  • The World Cup
  • Re-re-write started in eclipse and I've been addressing GUI changes
That brings us to Monday when I got an email about the app selector not working for the MP3 button.  This feature has been a pain in my butt since day one and I've gone though many different methods for picking a music app and I'm hoping that I've got one that works...

Also, Galaxy S5 users don't have a menu button any more, so they couldn't access the menu (there's a back door method), but I figured I should also add an on screen button.  That's what the colon in the upper right side is for.

I have been working on Desk Clock Plus V2 and hopefully I be able to share a rough screen shot shortly.

Thanks for your support and patience. 

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.

Tuesday, April 23, 2013

I am HERE!

Yesterday afternoon, I posted the "second half" to the hot fix that was caused by the deprecation of the Yahoo Geo coder.  The static location picker should now be working again.  When you enter your location, if there's more than one returned you'll get prompted with the first 20 results.  If you're location isn't there you may need to provide more information (state for example).  In some ways, I'm a little happier with how this works, but in other ways, I preferred the old method as I was able to pre-filter the results by your location (ie US, UK, AUS, etc).

My goal for tomorrow is to write (or at least write most of) a post regarding the state of Desk Clock Plus.

Wednesday, April 3, 2013

Where are you again?

I got a couple emails about the weather not loading.  I looked into the problem and found that there's a problem converting your Latitude and Longitude position into a Where On Earth ID (WOEID).  It looks like the reverse geo coder that I was using got retired, so I made a quick change to use a different look up process.  There is probably still a bug in there when you're trying to search for your location to set it as a static location (if you're already using a static location, you should be good as long as you're not trying to update it).  I'll address that bug tomorrow or next week at the latest.

If you want to side load the update you can visit +Desk Clock Plus . on g+.

Friday, August 17, 2012

Previously on Desk Clock Plus...

It's been a month and a half since the last post.  Work and life in general has had me running like crazy with little time (or motivation) to work on the clock program let alone update the blog.  Since the last post on July 2, here's what's changed:

  • A number of smallish bug fixes that came up from any number of reporting methods (see: How to get a bug fixed.)
  • A quick hot fix because one of things I tried didn't work... 
  • Two new features:
    • Orientation Lock
    • Static background color
  • Caught a potential NULL value
  • Fixed a display bug for 100+ degree days
That brings us up to today's minor update which is just adding 1 minute to the screen saver time out.  I promised this to a user back in December, but I forgot about it.  Sorry!

I have been working on Desk Clock Plus when I can since the last post, but I haven't gotten anywhere really.  The game plan is to break the application up from one big project into a number of smaller libraries and one execution project.  This will then allow me to swap parts of the application out on a version by version basis. The real push for this is the Alarm code which is still based off the 2.2.  I had to maintain that version of code as it pretty much worked for all the different versions of Android.  Google made a major improvement for 2.3 which I'm not using.  The goal is to build a legacy version of the alarm and then other versions for 3.x versions and for 4.x versions.  Libraries are key to keeping all that code manageable by re-using all the common code among 3 different versions.  The problem is the code is so interlaced that can't quite get the code split up correct to avoid circular references (ie two libraries that reference each other, which leads to the chicken vs the egg problem). 

Earlier this week, I came to the conclusion that the on-the-fly design method really wasn't working (there's a big surprise) and I'm going to have to sit down with some design tools and figure out how I can break up the application that works for now and should work for future enchantments.

Monday, July 2, 2012

Hold on tight...

The updates might be a little fast and frequent for the next week.  I figured that I would spend some time reviewing the stack traces that have been sent in (I was up to about 15 issues).  Some of them were odd little things that only happened once, but still required some extra checks to make sure it didn't happen again.  I did however make a couple minor fixes to the stuff I released last week that caused some users to get an index out of bounds error.

I still have about 10 issues that need to be looked at, but as long as nothing critical comes in overnight, I'll probably hold off as long as I can before pushing the next set of bug fixes out.

Friday, June 29, 2012

Long time coming...

The last post to this blog was made on April 10th and the last update to the app was probably around that time as well.  That's almost three months... and you would think that after that amount of time I would have some crazy new enhancement ready to roll out.  Sadly, I don't.  After the last update, I started into looking at a weather extension and I think I have a plan for that, but then my 9-5 job got real crazy and home life got crazy.  I also got an email from a user who couldn't configure the docks, so I started into a redesign of the save / load mechanism for the custom docks.  The problem was that I lost motivation to work on this during my lunch break, so things started moving very slowly.

That started to change a couple weeks ago... with Verizon's move from the unlimited data plans.  My wife and I replaced our 2 1/2 year old OG Droids were replaced by shiny new Samsung Nexus' (Nexi?).  That kind of got me moving again as developing on the new phone is a dream compared to the OG Droid.  Then as it seems almost always happens I got a couple emails about the dock configuration issue.  What was nice was that one of the user's said that the problem started after his Razr was updated to Ice Cream Sandwich.  Quick emails to the other users and it seems that they were all on version 3.2 or higher.    I was able to confirm the issue on my new phone as well.  Fortunately, I was about 75% done with a rewrite of the dock extension and I was able to finish it up and send out a Beta to the users who has emailed me.

I made some other minor adjustments and that brings me up to where we are now.  Version was just pushed out the market a little while ago with a better way for me to handle saving the dock configuration (that also works for ICS) and a small tweak to how I try to get the music apps, based off this article from Android ER.

I do feel a little motivated to work on Desk Clock Plus more after diving back into get this last bug fixed, so hopefully I'll be able continue to be motivated and get going on the other extensions that I've been thinking about since I started on the Desk Clock Plus project about a year and half ago.

Thank you all for your support and patience between updates.