Tuesday, January 24, 2012

Update Round-up

I've been neglecting the blog lately although I've been rolling out updates in a steady stream.  After the last post, I started digging into the static location feature.  Most of the people who sent email asked "can I just enter a zip code".  Well, that would work for the 70% of people that are in the US, but having received emails from all over the world (Chile, Australia, UK, Austria and Poland just to name a few), I didn't want a solution that would only work in the states (I try not to be a narrow minded American).   Recently, I discovered Yahoo! PlaceFinder.  In the same web service fashion as the weather, you generate a HTTP request with the information and it returns an XML file of location information. Some other additional nice things that go with it, is that if you provide it a common city name (Newcastle for example has 8 locations in the states, at least 3 in the UK and one in Australia).  It will return you a list of XML nodes that I used for a dialog.  You can also add in a locale which will only return the relevant locations for that locale.

I was more than halfway though adding the static location feature in when I noticed that I started getting a steady stream of force close reports.  It seems that I wasn't checking for a NULL value when getting the location which caused the app to crash.  Fixing the error was pretty simple, but I had already made a number of changes that would need to be rolled back to release just the bug fix.  I decided to just plow though the finishing static location as I thought that would be faster.  All said,  I ended up getting about 45 reports in week from the last update until I got the error fixed.

Not sure when version 1.0.0.12 was released, but it fixed the NULL force close issue and added in the static location which can be used Never, Always or when your location can't be found (back up).

Version 1.0.0.13 was pretty much a maintenance release.  Just a number of little bugs (again from Force Close Reports) and other odds and ends that just needed to be cleaned up.

Version 1.0.0.14 (the latest) big change was fixing a bug with the location loop up.  Emailing back and forth with Christopher D, I ended up discovering that my my location look up hierarchy wasn't working as expected.  The idea was to try to use this list (if enabled) to get the location :

  1. Static Location
  2. Location Based on IP Address
  3. Get current location 
  4. Get a cached location
  5. Get back-up location
  6. Location can't be found (give up)
The his phone had a problem was with getting the current location so it continued on to the cached location.  That was where I started to find all kinds of problems.  I ended up making a lot of changed to how the cached location works and what to do with it when it finds it.  All in all it was pretty much a product of the rushing to get the static location out to the market.

The other thing I wanted to note was that I did set up a Google+ page for the Desk Clock Plus.  I don't use Google+ on a personal level (or any other social media for that matter), so I'm really not sure how it's all going to work yet.  I figure, quick updates, support and I guess it is another way to get in touch with me.  It's an experiment so we'll see what happens with it.