Saturday, August 29, 2009

My First Android Application

I have been quite busy during last few days developing my first Android application, so I have postponed publishing some tool reviews I have promised to write. I am currently evaluating some interesting tools while developing my first real application.

I am not ready yet to reveal what I am developing, but let's say that the application I am really excited about is related to what I have been basically studied since 1994 :) I have really enjoyed (so far) writing code for Android platform using Java and the advanced IDEs, such as Eclipse and NetBeans . (FYI, I am also a devoted iPhone fanboy enjoying Objective-C, but disliking XCode IDE ...). During the years as a Java developer, I have been developing a huge library of more or less reusable Java classes and frameworks - now I am able to reuse most of them for Android development :)

Custom Google Search Engine for Android Developers

I created and added a Google custom search engine to my blog that focuses on Android application development. My search engine searches the entire web, but emphasizes a list of web sites I have defined. If you are interested to get your web site or blog included into my search list, please contact me. (I will do it for free :)).

Monday, August 24, 2009

Masa: Maven Plug-ins for Android development

I was tipped by Shane Isbell about Masa which is a project developing and providing Maven plug-ins for Android development. The currently released version 1.1 supports Android SDK 1.5. The project also provides a Maven repository at address I will try to use the Maven plug-ins and report about my experiences.

Thank you Shane! You can read more about Masa and other Android related storied from Shane's blog.

Saturday, August 22, 2009

Optimizing PNG Bitmap Files

PNG is the preferred bitmap graphics format for developing Android applications. If your application is using PNG bitmaps intensively, it is a good idea to try to reduce the size of the PNG resource files using various optimization techniques and tools. I did some googling and after a quick search I found the following tools:
More information about PNG optimization can be found, for instance, from PNG-Tech website. Feel free to hint me if you know any good tools not listed above.

Thursday, August 20, 2009

Maven Plug-in for Android Development

If you are a Maven fanboy (or just a plain user), there is a Google code project developing and providing a Maven plug-in for Android development. The plug-in lets you to build Android application projects (apk) with Maven and with minimal configuration. The plug-in project has also produced a decent Getting Started Guide. In addition, since the project deploys to Maven Central, you do not need to bother to configure any repositories of your own.

I have used Maven in some past Java projects at work. Since my own experiences in using Maven have been mostly positive, I plan to take this Maven plug-in into test use.

A Development Journal about Android 2D/3D Game Development

If you are planning (like me) to start game development either using Android's 2D graphics API or OpengGL ES APIs, I highly recommend you to take a look at this excellent The Light Racer 3D Development Journal written by Robert Green. Robert discusses in detail the software development process he is going through in developing his Android game entitled Light Racer. I found this well written and illustrated journal to be very interesting and useful introduction into Android game development. Robert addresses many problems he faced during the development as well as describes the solutions he used in detail with code samples. This is very useful for other Android game developers, because the problems he describes, are quite typical when developing game applications with Java language for Android platform. In addition, the journal provides a nice collection of useful web links for more information.

Robert is developing both 2D and 3D versions of the very same game. The first 20+ journal entries fully cover the development of the 2D version. At the moment, Robert has published the first two entries reporting the first four days of the development of Light Racer's 3D version. It will be very interesting to see how much 2D and 3D application development differ on Android platform. I am also looking forward to read Robert's experience about the performance of Android's OpenGL ES 1.0 implementation . Briefly - a great tutorial and introduction to the wonderful (but challenging) world of Android game development. Thanks and kudos to Robert :)

Wednesday, August 19, 2009

YAAAS - Yet Another Android Application Store

Archos is one of companies preparing to release products based on Android platform. The first product will be most likely the long rumored Android-based internet tablet. To involve developer community to support their new Android gadgets, Archos has soft-launched a website called AppsLib which Archos wants to be the place to be when it comes to finding free and paid application. They are aiming to AppsLib to become the cornerstone of Application Stores, the place where people will find the best-of-breed applications.

Application developers can create a special developer account, accept the Distribution and License Agreement, and submit their applications.

AppsLib website is yet another indication about Android platform gaining momentum. As Android developers, we are living interesting times. :)

Tuesday, August 18, 2009

Twitter List for Android Developers

Mathias Saphiro has put a together a Twitter list for Android developers as a Google spreadsheet document. You can view the list here. If you want to publish your own Twitter account on the list, just fill in this form. Kudos to Mathias!

Monday, August 17, 2009

Facebook Connect on Android

There are quite many iPhone apps that utilize Facebook Connect to provide social gaming features. My wish has been that Facebook Connect would be soon available also for Android platform. Today, I was delighted to notice that a company called Codecarpet is currently porting the iPhone implementation of Facebook Connect to Android: The good news is that the company has promised to release their library also for other Android developers under Apache 2.0 open-source license. Way to go Codecarpet :).

Funny Android logos

This blog is not specialized in logos (although this is already my second logo related blog entry ...), but the following blog entry introduces some funny modified versions of the Google Android logo: Take a look - and get inspired to create your own Android logos.

Friday, August 14, 2009


I just configured ROBOPUPU blog to feed my twitter account via

MOTODEV Studio for Android

I downloaded today MOTODEV Studio for Android. The tool is targeted to be a complete Eclipse based development package for developing Android applications. The key tool features are described to be as follows:
  • Eclipse 3.4 based tool environment including Android Development Tools (ADT)
  • Automated updating of ADT
  • Advanced support for templates and code snippets
  • Application signing support
  • Marketing integration via connecting to Android application stores
  • Update Manager for updating the installed components
  • Context-sensitive help and integration documentation
  • Handset emulators including the Motorola-specific ones
  • Application creation wizards for creating implementations of the most common and important framework classes
  • Virtual device lab for launching applications on real handsets hosted remotely at DeviceAnywhere, across carriers and regions.
  • Package deployment supporting easy loading of developed applications to handsets and emulators.
  • A dedicated Eclipse perspective
  • Running and debugging application in Motorola handset
The key features list sounds very interesting and promising. It seems to me that Motorola is making a big effort and investments to enter into Android economy. I will definitively give a try for MOTODEV Studio. I will report my experiences and findings in this blog in near future. Stay tuned.

I am interested to receive your comments about this particular tool and other Android development tools currently available.

Thursday, August 13, 2009

Android scripting

Just how cool is Android? If you like scripting in your apps - just do it: Python, Lua, and BeanShell are currently supported. JavaScript and Ruby support are soon to follow. I am happy that Google is not setting any restrictions to utilize scripting in applications like Apple does for its iPhone OS.

Wednesday, August 12, 2009

Saunalahti starts selling HTC Hero

Saunalahti is the first Finnish operator that starts to sell Android phones: HTC Hero and Saunalahti MegaViestiX 3G . I just hope that Android Market for paid applications will be now opened also here in Finland ...

Tuesday, August 11, 2009

Android links list

While still learning how to customize and elaborate my blog, I added a new gadget that provides a list of Android links I have found useful or otherwise interesting. Feel free to hint me about interesting blogs, or to notify me if any of the links is broken.

The meaning of "Robopupu"

It is (usually) cool to have a cute name and logo for your web site, blog, or application. I definitely wanted to have a cute name and logo for my new blog . One day I was playing with my 2-years old son who happens to be a huge fan of pupus. Pupu is a childish word (similar to bunny) for rabbits in Finnish language. (PuPu happens to be also the hawaiian word for the enjoyable little edibles, but do not tell that to my son ...). Time to time my kid dresses up his rabbit puppets to be little robot rabbits. Robots reminded me about Android and my desperate search for a cute logo, and that is how I got the idea about Robopupu. I hope you like it. At least my son thinks that Robopupu is way cool :)

It's time for me to start Android application development and blogging about it

I recently bought a HTC Hero Android phone, because I wanted to start application development on Google Android platform. I have been developing with both mobile and desktop Java since 1995 (yes, I know I'm an old timer). I have been waiting for a powerful enough mobile Java development platform over 10 years now. I did not like much about J2ME platforms, because I experienced them as too restricted development environments lacking a lot of functions and APIs I really wanted to use. SavaJe OS running Java Swing applications was very promising and interesting, but unfortunately it did not made to markets. (Sigh, I still have my SavaJe developer phone I bought from JavaOne event :)).

When Google Android OS was released, I immediately realized that Android, backed up by Google (the most innovative IT company in the history of humankind and rabbits, IMHO), is the platform I have looking for all these long years. So, now I am more than ready to start development on Android. I also decided to start a new personal blog for documenting and sharing my experiences with, findings on, and tips for the Android application development. I plan to provide some sample applications and class libraries and other code I consider useful.

I am really excited to start application development for Android platform, and I hope that you will enjoy reading my experiences with it :) I am also looking forward to receive your feedback and comments.


Marko Salmela