Wednesday, January 26, 2011

Globalization

It's a big buzz word around my office for my real job.  It wasn't really something that I thought about when I started the android development.  However, when I used some of the Google clock code as a base for my clock, the localized strings came with it, so my desk clock was half globalized.

Last week, Paul from the Netherlands emailed me regarding the force close issues.  Fortunately, I think I have the issue resolved*.  We traded some emails and I got a small list of "wouldn't it be nice if".  Which, once again, is something I'm used to with my real job.  His first comment was the date formatting, I naturally formatted the date Month, Day and he would like it formatted Day, Month.  The change to the formatting is nothing, but the question is when to do it.  What's cool is that there's a function getDateFormatOrder that will return a character array with how to format the date.

His other request was for the weather conditions to be localized.  I'm getting my weather information from yahoo, parsing the XML return, and stuffing the value of Condition into the text box.  I tried to see if I could pass Yahoo a language ID and have it return the localize conditions, but no dice.  So, I opted to use the condition code and then get the string from inside my application.  Paul offered to translate the conditions into Dutch and all looked like it was good.  After typing out all 43 conditions in English yesterday, I wasn't looking forward to doing the same thing in Dutch today.  So, after some searching I found some really cool tools:
  1. App Localizer  This nifty web page you can copy and paste your XML strings file into a text box and tell it what language you want and after some google translating you get a translated XML file back.  It's pretty awesome (and pretty quick too).
  2. Androlate BETA  This is a plug in for Eclipse that will do the same thing but in line.  It is still beta, but I thought it worked pretty damned well, although I thought it was a bit slower than the App Localizer web page.  There was some goofiness with how I had to do things since I have my strings broken up in to multiple files, but all in all I'm happy with it.
So, I have the Desk Clock Plus application completely localized in Dutch, German and Spanish.  After I push it out to the market I'll have Paul check it out and if all looks good then I'll have it go to town on all the 2.2 languages.

*Another user reported that his previously working Droid 2 isn't working anymore once it gets docked... no rest for the wicked...

Wednesday, January 19, 2011

Update Bomb

I've been rather busy with all three of my projects lately... I was finally able to get everything done and taken care of and I just got done pushing updates to all of them.  But first a little rant...

I personally am very happy with my version of the Desk Clock.  It works very well for me on my original Droid.  It works well, on the Droid 2 and on the HTC incredible (according to my cousin and sister).  I've also have a co-worker using it on his Droid X.  However there are some people who are still having issues with it force closing on start.  That sucks.  I want my software to work for everyone.  The problem is the phones that they say that it doesn't work for... I don't have access to.  Beyond that, I can't say if this is some specific to the phone or the user or a combo of the two.  Additionally, If you going to bitch about it not working, HELP ME, HELP YOU!.  Fill out the Force Close Report!!!  I'll get a stack trace that should help me figure out what the problem is.  I guarantee that it will take less time than going back to the market and complaining there...

I feel a little better... sorry about that.

Desk Clock Pro: I changed how I get the "default background" and I suspect that was the cause of some of the problems or at least I can guess cause nobody fills out the Force Close Report (sorry about that)... The added bonus is that now the Live Wall papers will show through which is pretty cool.  It turns out that I was doing too much work and in most cases if your doing too much work then your doing it wrong.

I still don't know what the problem is with some people and the music button.  It tries to find the default first and then if it can't it should display a list to choose from.  I'm planning on putting an option in the settings for the user to choose which one they want to use.  I'm hoping that speeds things up a little and reduces some of the problems (or at least helps me find the source of the problem.

Launch Bar Pro:  I've learned a lot since I started programming for the Android OS six months ago.  Some of that has been slowly working it's way into the Launch Bar.  I was able to reduce the amount of work it was doing and therefore made the loading and scrolling features a lot faster.

Launch Bar:  The big thing that I'm excited about is that you can now unlock the Pro version from the basic version buy purchasing it though PayPal for $1 USD.  What's nice is that if you are running both versions, you can unlock the free version and basically be running two different Pro widgets!

I don't think I'm going to get rich off of any of my applications, but any extra scratch helps at the end of the month!

Looking forward, I 'm probably going to change out the weather icons for the Clock in the near future.  I talked about a menu option of the musing and I think I'm going to get picasa support for the slide show / backgrounds.

Until then...