We’ve been working on a number of mobile application development projects for quite some time now, which is also one of the reasons of slight update delays.. but hey, who really wants to know what the new rumor is? This is in continuation of our App Development Journey – Getting Started: Developing a Mobile App
Mobile development has taken the world by storm. iPhone takes alot of credit in sparking up a pretty much unprofitable boring industry where most applications were either video players or some games which were like 16bit sega stuff at best. Today every new software announcement has alot to do with mobiles, Location based services etc. Its very rare these days that we hear something new concerning desktops. recently the Chrome OS!
Now we are looking which mobile operating system fulfils developer’s needs most. Android? iPhone Mac ? (i wish they had a name for it!) or is it WebOS? Am I missing any other? Symbian OS is on its way to oblivion. Nokia has posting a drop in profits by 66%. That says alot doesnt it? Symbian lost its flare, its charm and frankly looks like those little 32 bit digital diaries. Symbian Foundation is their only hope and I’ll include it only after it generates developer interest.
That leaves us with two prominent choices – Android, iPhone. We’re going to examine what serves our (developer’s) interest best. ( Note: this is not a review of the operating systems )
Programming Language – a matter of preference
This question is a matter of preference. iPhone trumps Objective-C. They’ve dedicated their whole Mac Org around it. Developers new to this area will find little difficulty in grasping it. But Most iPhone API’s are like a programming speech rather than scary short win commands. They could be a little wierd at first but sweet later. Forexample: take this method of iPhone -
applicationDidFinishLaunching{ }
Android brings in Java, One of the most common and widely deployed/used language today. From the very powerful ASM coders to the HTML graphic warehouses, all have heard or have done something in Java. Developers from all sectors of app building can do something here. It aint just exclusive to B.S computer engineering!
Software Developer Kit – Xcode, Eclipse,
These are called SDKs for a reason. Google and Apple make SDKs so evey Tom, Dick and Harry are able to contribute (code) something without too many hassels. Its there to make our jobs easier. And they do succeed in different ways. Xcode (iPhone) is great. Its an umbrella of different apps ranging from designing interface, debugging, compiling, Icon desiging, Analysing memory allocations, memory Leaks, application simulation etc. Pretty much everything you need. The spoiler here, is the time you’ll probably take to figure out how all this is supposed to work. It took me days if not weeks to figure out how Interface Builder works. Its something I’m not used to. In C++ it was about code generation while in Delphi and VB had clickable controls which were as easy as walking through doors. But remember I said, they’re here for a reason! IB once figured out, makes life a helluva lot easier.
iPhone Simulator is not an Emulator as commonly perceived. Its common for apps to act differently when simulated and when a full released version is run on a device
Eclipse, Android’s SDK is java based. Its a pretty simple straight-forward looking SDK. You know whats going on from the start. Theres little to understand but alot to code here. Android Developer Toolkit is what integrates all libraries, compilers, Emulators into one. This is a little tough, sometimes it feels Android assumes your experience of Linux. And it get harder to set it up and put it all together. But its not a big problem. Something that you’re doing even before you begin isnt necessarily a drawback.. is it?
Legal Issues
Android Legal Issues..? Well, there arent any! Google hands over the control to you. All they’re interested is in you developing a quality worth application. If dealing with papers is not your style, then iPhone will kill you. First you gotta fill this form and become a “Registered iPhone Developer” for a $99 individual license. Then you’ll download the’re released SDK’s and code your thing, after which you do some big tiring angrying steps called “Provisioning Profiles” that lets you test on yout iPhone/iTouch after which you submit your complete application for approval where you keep waiting for an answer for weeks and still run the risk of being rejected! This is where Android wins hands down! Your the master of your application. No revenue sharing model, Google makes you incharge of your own personal store.
Having said that, Apple lets you display your app on the worlds biggest online music/video/app store – iTunes/App Store. But I dont consider it any advantage as your giving away a huge 30% of your app revenue to Apple. I’d rather make my app worthy, spend the same on marketing of my choice.
Online Stores
App Store vs Android Market.
Downloads from App Store reached 1.5 Billion. nuff said! App Store the most organised well designed integrated Application store on the internet. Its nicely integrated with iTunes and this widenes your customer base and ensures exposure. No wonder they snatch your 30%. Android Market still doesn’t have categories! nuff said? Thats unbelievable! The success of App Store tells us something. It says that users like to converge to a single store and shop. The Android Market still has a long way to go before it could challenge App Store.
But heres the difference in vision, policy so to speak. Google thinks that stores such as App Store will eventually die down.. and the world of web will take over once again. Theyre probably right.. but Not At The Moment. We’re concerned only about today. There’s currently no competition to the level of exposure the App Store gives a new application.. sadly!
Hardware Issues
Okay, So you decided which platform your coding for, your aware of all the legalities involved, the independence/rights you’ll have as your application owner. But are there any potential difficulties still? Yes, not difficulties as such but more ground to cover. When your coding for iPhone, your ONLY coding for iPhone and iPod Touch and any grandpa will tell you that both “i”s are the same. There are little hurdles here to think of. No resolution challenges. No need to test on specific compatibility problems.
Coding for Android on the other had is a different ballgame. The impact of T-Mobile G1 with a freakscore of 8.7 has not made a big impact on the market as expected. Maybe a larger range is required here that will include all sorts of devices, from the new rumored premium touchscreen phones to the little non-touch screen smartphones (I’m still waiting for one of these), with different processors, hardware specs etc
This is Not a major hurdle, but its something to be prepared about.
Apple iPhone’s position as the fastest growing smartphone today with its virtually single portfolio does help us as developers financially. But hey, the scenario will completely change once Android catches up.
In conclusion, as of Today, 20.07.2009 AD, developing for iPhone has some edge over Android. I’ve not commented on WebOS and MojoSDK. I havent had enough time to look at it yet. It should be a worthy competitor. So, whats your preference?
RELATED ARTICLES:
July 21st, 2009 at 8:41 am
I think Android has to do alot more to get more developer support. ADC aint enuff!
October 12th, 2009 at 6:14 pm
woohooo
i’m really excited now!1
November 2nd, 2009 at 5:34 pm
Join tomorrow’s Orange Partner webinar at 3pm (UK time) “The Apps we are looking for right now“ http://bit.ly/Q0zAB … Find out more how to distribute your Apps through Orange App Shop!
March 28th, 2010 at 6:46 pm
Android will hopefully take over the Apple app store.
April 20th, 2010 at 7:30 pm
http://www.submitapps.com/gizmos/iphone-4g-to-be-dubbed-the-iphone-hd/
July 3rd, 2010 at 11:36 pm
Great write up. The iPhone is truly awesome and I don’t like being without it. This time last year I had jumped in a pool with my iPhone and it was dead. I had to wait 10 days before I was able to buya new one. The phone I had was a cheap go phone. I really love all the apps that can be downloaded to the iPhone. The best part about the iPhone to me is the ability to check emails on the go. Thanks for the information.