Comparison of Android vs iPhone vs Nokia vs BlackBerry vs Windows Mobile 7

by adrian vintu 4/13/2010 8:29:00 PM

I have previously published an Android vs IPhone comparison and many people requested that I do a comparison of Android vs iPhone vs Nokia vs BlackBerry vs Windows Mobile 7. So here goes.

Android

  • open platform http://source.android.com
  • can compile custom firmwares - good for hackers and other
  • good framework, extended on each new firmware
  • supports multitasking
  • nice IDE - Eclipse, NetBeans
  • development SDK is free
  • easy to debug, can send logs to developers
  • programming language is Java but bridges from other languages exist (C# .net - Mono, etc)
  • Java is a high level language that appeared in 1995. Android supports Java 1.5 and translates the byte code to its own custom Dalvik byte code optimized for mobile devices.
  • for the hardcore programmers, Android offers the possibility of programming in C using the native dev kit NDK
  • can run script languages like LUA, Perl, Python, etc
  • can install third party applications from sdcard, random sites - not locked to a specific market
  • applications can hook and override everything - email interface, SMS sending, custom keyboards, etc
  • supports widgets
  • can publish applications on the Android market instantly - initial one time registration fee is 25E
  • user has access to the sdcard and can use it as a USB disk
  • no Adobe Flash support yet. Probably will be available in Q2 of this year.

iPhone

  • closed platform
  • no multitasking except for some Apple applications. multitasking is probably going to be introduced in the next vertion of the iPhone, the iPhone 4
  • development kit costs ~90E
  • programming language is Objective C - but bridges exist from Java, C#, etc
  • Objective C appeared in 1986
  • next version of iPhone is supposed to only allow Objective C code, this means the bridges are out and you must program in Objective C if you want to create an iPhone application
  • applications are not allowed to duplicate the iPhone functionality - ie no custom email interface, etc
  • does not support widgets - unless the phone is jail broken
  • user does not have access to the sdcard - user can only do synchronization via internet or LAN
  • third party applications can only be installed from the Apple store. For testing the applications, developers can use Ad Hoc publishing
  • publishing on the store is a very lengthy and tiresome process. Apple has many and bizarre rules. Many applications were rejected for strange reasons.
  • no Adobe Flash support

Nokia

  • opened Symbian and says the future will be QT and WRT - they will cut support to any other environment including J2ME
  • QT is a framework that adds a layer of abstraction over gui, network, gps, etc.
  • QT is cross platform and cross programming language - C++, C#, Java, etc. the licenses are GPL and LGPL.
  • QT runs on Maemo, MeeGo, BlackBerry, Symbian, Android, iPhone, Windows Mobile, desktop PC, consumer electronics, car entertainment, etc
  • WRT - web runtime - a cool feature that allows users to write applications in HTML, JS and CS. You build the app like a normal web page, and you interact with the phone platform/hardware using the WRT bridge.
    No need to learn any other technology. Just HTML, JS and CS. Very important: JS can call native code, but also the other way around. It seems you can call WRT JS with native code.
  • supports widgets
  • supports Adobe Flash Lite

BlackBerry

  • as it is now, the programming environment is Java native and J2ME - not worth mentioning since they will probably be extinct pretty soon
  • no Adobe Flash support yet. Probably will be available in Q2 of this year.
  • we expect a new OS so we will just have to sit patiently and see what's going to happen

Windows Mobile 6.x

  • native C, C# with PInvoke - not worth mentioning since MS released WM7 and broke compatibility with 6.5

Windows Mobile 7

  • closed platform
  • MS breaks compatibility with WM 6.x - this is very bad
  • programming environment is Silverlight and XNA.
  • no native programming ie no hooking and overriding keyboard, etc - they removed PInvoke
  • nice IDE - Visual Studio 2010
  • does not support multitasking for third party applications
  • third party applications can only be installed from the MS marketplace
  • no Adobe Flash support

Notes


Android phones seem to be cheaper than the iPhone. Also the hardware is in some cases double than what the iPhone has.

For those coming from a Microsoft/Borland/Java background, Objective C will probably look like a very big step back - to say it as politically correct as possible.

Nokia says they will release the new phones end of this year and at a "lower price than ever". The Nokia phones are iPhone and Android clones - they can do what those two beasts can do, but nothing more. It seems they don't bring anything new to the table.

The available MS demos for WM7 are, to say the least, pathetic. It is a very non user friendly phone. Brings lots of changes (many not good) and totally breaks the look and feel the WM6.x owners were used to. Breaking software compatibility with WM6.x instantly puts many companies out of business.

The iPhone market seems to slowly but steadily go down. Some influence is the nice and cheap Android phone. Another reason for the iPhone sales dropping is that people are trying to get away from the whole iPhone=snob social stigmata.

In general, people tend to stick to their preferred phone manufacturer. Nokia fans are very excited about the new phones. Android users don't have anything better to switch to. BlackBerry users will never switch to other phones because of the great (subjectively speaking) physical keyboard.

The question is: what's going to happen to the iPhone and the WM7? I think the waters are too blurry at this time, so we'll patiently wait and see what happens.


EDIT: If you are an Android programmer, you must check this link out http://adrianvintu.com/blogengine/post/Colored-Logcat-Script-for-Windows.aspx


Related posts

Comments

5/1/2010 7:26:19 PM

adrian vintu

iPhone developers can test their applications using Ad Hoc publishing. The beta testers number is limited to 100. See here for more info: reviews.cnet.com/8301-19512_7-10115674-233.html

adrian vintu

5/23/2010 5:46:27 AM

adrian vintu

You are right. It seems it's the first Android to support Flash. Thank you for the information.

Here is the source www.htc.com/www/press.aspx?id=103536&lang=1033

adrian vintu

5/23/2010 9:35:31 AM

Quandary

Android not supporting Flash?
I don't know about the rest, but I have a (unmodified) HTC Hero, and the Browser fully supports Flash - up to Flash v9.
Flash 10 doesn't yet work.

Quandary

12/14/2011 12:58:02 PM

pingback

Pingback from mubbisherahmed.wordpress.com

Used iphone under a palm tree where I met android and formed a symbian relationship with a blackberry « Engaged IT for the CIO

mubbisherahmed.wordpress.com

11/25/2012 2:29:28 AM

pingback

Pingback from 24x7reports.com

24×7 Tech reports » android dev phone comparison

24x7reports.com

Comments are closed

About Adrian Vintu

Adrian Vintu

Adrian Vintu is an old timer who has had the wonderful experience of working in a variety of quality environments and with various quality people.

Throughout time he has got down with Assembler, C++, Borland Delphi, Java, C#, Android etc. He took part in projects concerning software security, industrial controllers, food and health-care ERPS, AI simulations, data mining, mobile development, computer games, augmented reality, online distributed transactions, and financial management and trading.

In his spare time he develops free educational applications that run on Android and Windows Phone. It is his way of thanking and giving back to the open source and free (as in beer) software community and a way of bringing value to the social community and young generation.

Send mail

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2008 - 2014

Sign in