So, I recently stumbled my way into Android development, after a good few years of learning iPhone. I got myself a fancy new Nexus One for testing. I waited the twelve and a half hours for Eclipse to install the entirety of the internet, because apparently that’s what is required to develop in Android. Then, I started delving into any and every tutorial I could find. A few short months later and here I am with a shiny new Android App, almost ready for distribution.
Now, I’m going to say something that will probably upset some people, but let’s face it, more than half of the apps out their on the Android Marketplace are just ports from the iPhone versions, and poor ports at that. Okay, so probably not half of all of the apps, but at least half of the apps you actually care to buy. Most of the developers making these apps, like you or I, started out on iOS working in the fancy, clean, sterilized little box that Apple provides us all with. At the heart of us, we’re Mac. When we wake up in the morning we hear that soothing ‘startup chime’ in our heads, and we know, all is right with the world. When it comes to Android, we just want to get it over with, we want to get out of Java and get back to our clean, sterile, shiny, little, perfect environment Ã la Steve Jobs. Unfortunately, that leaves every young man with his shiny new Android Phone with nothing but piles of what seems to be pre-digested hash browns claiming to be applications at his disposal.
Therefore, I’ve decided I’m going to explain to you how to take your shiny, sparkly new iPhone app and turn it into a just as shiny, just as sparkly new Android app. But, as a warning, I would suggest, that if you have yet to do it, go through the Hello World tutorials on the Android Developer site, watch through some of the video sessions from the Google I/O Conferences, or even go pick up Professional Android Application Development by Reto Meier.
First things first. Android is NOT iOS in fact the two are entirely different. I know this is terribly obvious, but Android is written in Java, and iOS is written in Objective-C. So, having this nifty little piece of information in your toolbox now, you should take all of your original iPhone Development and Design work and throw it all away! Obviously, I don’t mean to literally delete it all from your Hard Drive, just pretend that you have. For the purpose of writing your Android application, pretend that the iPhone version does not exist. I want you to start completely from scratch. Aside from the most basic architecture of the application i.e.: what views need to exist and what they need to connect to, as well as any Web Service calls.
Clear your mind of all things iPhone, I know, if you’re anything like me, that’s a near impossible task. Nonetheless, you must try. It is absolutely necessary that you achieve this Zen-like state of mind before we continue. We can’t have your mind cluttered with the beauty of iOS or there will be no room for the train wreck that is Android. My apologies to the designers at Google, but, by train wreck, I don’t mean their design work, pathetic as it may be in comparison to the iPhone. I mean the mass multitude of blithering idiots attempting to design on the platform. So, please, don’t be one of them. You started in iOS, you know what true beauty is. Please, don’t resort to strange behavior or lethargic methodology.
I’m going to show you how to design Android apps the way Google intended you to. Not mimicking Apple, just learning from them.