Author Archive for Tomas Lundqvist

A Developer’s Experience with Android- Part 2: The Code

Tomas Lundqvist
Posted by Tomas Lundqvist
on October 27th, 2009 in Technology

Despite my aforementioned enthusiasm for the phone’s functionality, I was a bit skeptical about developing for Android, especially when I heard that we needed to write Java code to access some of the functionality and for making a test application. I haven’t written a lot of code in Java. In addition, it didn’t seem straightforward for us to build our code like we usually do. The examples showed how to write java programs in a tool called Eclipse, and the sample code was built using a pre-made makefile structure which assumes that you put your application in a certain folder. The C++ support looked limited and we were unsure if the communication between our native code and java would work well enough to be able to call all our APIs and give real-time performance for the communication with the components that need to be written in Java. 

But the more I have learned about Android, the more positive I have become. This is also the case with my other colleague who works with Android. It was easy to install the SDK, NDK and the Eclipse tool by following the instructions on the Android developer web pages. It was also easy to start making a java test application by looking at the included examples, and the java language itself is fairly easy to understand for an experienced C++ programmer. In addition, Eclipse actually tells you what you are doing wrong while you write the code and gives suggestions on how you should do it instead! Overall, I found that Eclipse is a very useful and powerful tool to work with. The Android plug-in for it is also really good. Executing an application on a device and debugging it works great- much better than when developing for Windows Mobile in VS2005, which has a really slow communication between a device and the host PC.

When I started developing for Android, I was positively surprised by all the functionality that is available to a developer. Android is obviously made for application developers and I’m impressed by the performance of 3rd party applications on Android phones. Functionality which is commonly not available or hard to implement on most mobile phone OSs is available through well designed APIs. The APIs are not always well documented on the Android developer site, which is something that Google obviously needs to improve, but overall it is pretty easy to understand what each function does. I really think that the fact that the phone manufacturers and operators don’t “own” the OS is a path to success. The number of available applications is one of the reasons for the success of the iPhone, but Android has the advantage of being supported by a number of phone manufacturers, and by being more open than OSX. In the end, users choose a phone because they want cool features and open access to a number of applications, just like they are used to on a PC. I guess I’m becoming more and more of and Android fan!

A Developer’s Experience with Android- Part 1: The Features

Tomas Lundqvist
Posted by Tomas Lundqvist
on October 26th, 2009 in Technology

htcheroAbout a month ago, GIPS bought an HTC Hero Android device for the Stockholm office so we could investigate if we  could port our voice and video processing products to the Android OS. I saw it lying on the Chief of Software Development’s desk, and was eager to try it out, but our CTO, Roar, was quicker than I. Once he tried it out, he didn’t want to give it back! As you can read, he really liked how easy it was to use advanced features like e-mail and web browsing. This is in fact a very similar story to when we bought an HTC Touch Cruise, running Windows Mobile, for development. It eventually ended up with Mats in Marketing. He uses a lot of office/ business functionality and is more satisfied with the Cruise than his previous phones from large traditional manufacturers. The PC-like OS obviously works well on Smartphones.     

   Because of Roar’s infatuation with the Hero, a second device was bought to use for development and it landed on my desk. I could immediately see that the screen and navigation buttons were different, and better, than on the HTC devices running Windows Mobile that I am used to. Once I turned the device on, I recognized many similarities in the GUI from the HTC Touch Diamond- like the quick menus for settings, the horizontal scrolling between different screens and applications, and the clock. The big difference is that the Hero’s touch screen is a lot better than the Diamond device’s. Again, if you would take the Windows Mobile software from the Diamond and put it in the Hero, you would have a similar experience and look. So one shouldn’t get carried away just because it’s Android. The GUI and hardware are done by HTC. But I must say that I was immediately impressed by this phone, in a similar way that I was when I first tried the iPhone.