Wednesday, August 11, 2010

State of the Mobile OS Environments - May 2010

By Jayaraman Raghuraman, VP – North America, Endeavour Software Technologies, Inc.









This document compares 4 mobile operating systems – iPhone, WebOS, Windows Mobile, Android on the current state of the respective mobile OS and their application development tools support. It indicates the pros and cons of each OS. Further it takes a view on the future of windows mobile and the potential of WebOS.

The 4 platforms are described with respect to











Operating System

Current Version. OS 3.1.2 for iPhone, OS3.2 for iPad

Base Framework. UNIX based kernel built on OS X. Runs on ARM processors

Future Visibility. iPhone OS 4.0 release planned for summer 2010 with added support for select background services for apps and multitasking. Enterprise support and consumer game center is part of new OS upgrade.

OS Efficiency. Very Stable OS. Optimum use of resources means battery lasts for around 10-12 hours.

Device Management. No direct support for enterprise level device management. Support must be built in applications that run on it.
User Experience. Apple leads this segment!  State of the art, ergonomic and user friendly. Support for multi-touch gestures and accelerometer available.

Web Browser. Based on WebKit, supports HTML5, CSS3 web fonts.  Quartz style smooth rendering and smart zoom features.

Storage. No external storage. Has Flash memory that varies from model to model. SQLLite and Core data services along with flat files can be used for application data.

Hardware Support. 2 MP Camera, A-GPS, 3G, WiFi, Bluetooth. Accelerometer and Multi-touch HVGA display.

Multi Tasking. Current version has only default phone apps multi task. User apps do not run in Multi-tasking mode. OS 4.0 is planned to have preemptive multitasking and select background services such as Audio etc. But this is also limited.

Media Support. Video - H.264, MPEG-4 in .mp4, .m4v, and .mov formats;
                            Audio - in AAC, MP3, M4a, Apple lossless and Audible

Development Environment

Tools and Language. xCode 3.x on Mac OS X 10.6, Objective C

SDK. Apple provides the iPhone SDK v3.1.3 for iPhone and iTouch apps and v3.2 for iPad apps.
The SDKs are bundled with xCode IDE. Unlike other platforms, development is supported only on Mac OS X 10.6 and above. Core Graphics and core libraries offer developers variety of graphics functions. Open GL support is also available in the SDK.

Developer Support. All developer applications work in a sandbox environment. The OS restricts access to the device except few routine tasks. Developers cannot utilize the device capabilities beyond what is offered by SDK APIs.

The Objective C programming is relatively difficult. Prior knowledge of MacOS X programming is great help and in some sense a must.

Application support

App Distribution. Available over the Air via App Store with over 150,000 apps. Private distribution can be done through the enterprise program via iTunes. OTA distribution for Enterprise available in OS 4.0

Enterprise Support. Limited support. Can entertain only one Exchange account, allows PUSH email and real time sync. No true device management support. Supports VPN networks.

Consumer Support. Huge number of applications available on App Store for consumers to download. 25% apps on the App Store are free.


Devices available

Current. Only one model with varied storage size – iPhone 3GS. WiFi only iTouch and iPads with varied device storage options. iPad also comes with optional 3G support.

Future. Only one device option will be available each for iPhone, iPod and iPad as is currently available.

Pros /Cons

  • Very powerful API library for variety of touch screen features capabilities of iPhone. These include Swiping, Accelerometer, LBS – Use of GPS, Pinching, Split view and many more

  • Lot of Development help available in terms of MAC tools

  • People with prior Apple Development experience can pick up this platform very easily

  • The OS is limited in terms of allowing developers to build background process, applications and increase the power of the capabilities. Apple has put in lot of restrictions on developers in terms of using the API in different ways than prescribed.
  • Multi-tasking – even in the newly announced iPhone OS 4 is limited

  • Security for the enterprise is a risk. Apple working hard to introduce new security features including mobile device management, mobile user management. Third party companies are building solutions for enterprise mobile security.

  • Over the Air (OTA) method of downloading enterprise applications not available. This means every enterprise user needs iTunes. This is becoming difficult for IT teams to manage and control. Apple has announced they will support Enterprise OTA soon.

  • In a way, this is a closed platform, as if you need to build applications to run on various mobile platforms, they have to be rewritten.








Operating System

Current Version. Android 2.1

Base Framework. Linux based kernel with Core services written in C, C++ and JAVA libraries. Runs on many processor architectures – ARM, MIPS, x86, Power.

Future Visibility. Android OS v2.2 has shown major performance breakthroughs. New devices from HTC and Motorola to be launched soon.
OS Efficiency. Very efficient. With v2.2 this is likely to become one of Android’s strongest points.

Device Management. No direct support for enterprise level device management. Support must be built in applications that run on it.

User Experience. Very user friendly. Support for Multi-touch gestures and Accelerometer, Magnetometer available. At par with iPhone, though iPhone is a shade better.

Web Browser. Based on WebKit, Supports HTML5, CSS3 Web fonts. One of Android’s strong points.

Storage. Supports external storage. Flash memory varies from model to model. SQLLite and native data storage mechanisms are available for applications.

Hardware Support. Video Camera, A-GPS, 3G, WiFi, Bluetooth. Accelerometer, Magnetometer and Multi-touch display with varying display sizes. Some features are device and manufacturer dependent.

Multi Tasking. Full multi-tasking applications can be written.

Media Support. Audio - 3GP, MP3, MP4, MIDI, Wave, Ogg. Video - H.263, H.264 AVC and MPEG4 SP. Flash 10.1 is planned in v2.2.

Development environment

Tools and Language. Eclipse IDE, JAVA.

SDK. Google offers Android SDK 2.1, 2.2 and NDK for developers to write applications. For graphics and rich user interface, OpenGL ES support is available from the SDK and some custom libraries. SDK offers variety of emulators for developers to test, debug and run the applications during development. In build Unit testing tools.

Developer Support. Operating System offers full control of it to the developer application via number of low level APIs and programming hooks. The programming effort is average compared to other platforms. Prior knowledge of JAVA is must. Low level programming, however, demands specialized mobile development skills using NDK.

Application support

Android Market Place. Over 50,000 applications available. However compared to the app stores of other Mobile OS platforms, Android market place has a much higher % of free apps.
25% apps are free on the other app stores – apple, blackberry.
50%  apps are free on the Android app store.

App Distribution. Available over the air via Android market place controlled by Google. Private OTA distribution is possible.

Enterprise Support. Limited device management capabilities. Supports VPN connections.

Consumer Support. Considerable amount of applications – 50000 -  are available for users to download free or at nominal charge. Wide range of device options is available.

Devices available

Current. Droid, Hero, Nexus One, etc. About 20 devices worldwide.

Future. Multiple device options are to be available from number of manufacturers. This is one of Android’s biggest accelerators and something Apple will find hard to compete against.

Pros / Cons

  • Open Mobile OS platform, with lot of emerging features that are needed in today’s smart phone.  Also enables various touch tone capabilities liked by people on iPhone.
  • More than 30 devices by various manufacturers.
  • Truly Multi-threaded, multi-processing OS. Developers can build lot of capabilities, not possible on the Apple iPhone platform.
  • The OS contains a lot of emulator UI skins that enables a developer to develop the application for one set of screen sizes and intensity, but easily make it available on other screen sizes, sharpness without any development. This is huge for both manufacturers and developers.
  • Lot of manufacturers including Dell is looking at building net-books / other mobile devices based on the Google Android platform. Not sure how this ties with the Google Chrome OS, also released.
  • Android Market is the second most popular application store with more than 50,000 applications available for download. 50% of these are free. On other app stores – Apple, Blackberry, about 25% are free.
  • The Android 2.2 OS is a state of the art mobile OS with features available on standard desktop OS and higher performance. More details available on http://developer.android.com/sdk/android-2.2.html
  • Enterprise Security features and other needs for I/T organizations to include Google Android in the enterprise is taking time, as tools for the same are being developed. This adoption of Android by enterprises will increase over the next 12 to 18 months.
  • The biggest disadvantage of the Android OS is how they will continue to support the various OS / devices going into the future.  Also the vision for Android vs. that of Google Chrome in other devices other than mobile phones is not clear.








Operating System

Current Version. Windows Mobile 6.5. No major OS architecture changes since last 10 years.

Base Framework. Windows CE 5.2 based kernel with core applications build in Windows C, C++ and Windows API.

Future Visibility. Completely revamped Windows 7 is to be launched later this year. No backward application compatibility.

OS Efficiency. With full usage of WiFi, 3G, GPS and bright display the battery lasts for 5-7 hours.
Device Management. Support for enterprise level device management is available. Exchange Active Sync is available for PUSH emails.

User Experience. Conventional Graphical User Interface. No support for multi-touch gestures and Accelerometer available yet. Windows 7 may have support for these. Windows Mobile certainly lags way behind competition here.

Web Browser. Internet Explorer, Relatively primitive web browser. Supports Flash Lite 3.1. Third party browsers such as Opera are available for download.

Storage. Supports external storage. Flash memory varies from model to model. For application data storage, SQLLite, SQL CE and many third party database tools are available.

Hardware Support. Video Camera, A-GPS, 3G, WiFi, Bluetooth. Conventional GUI display with varying display sizes. Some features are device and manufacturer dependent.

Multi Tasking. Full multi-tasking applications can be written.

Media Support. MP3, ASF, WMA, WMV

Development environment

Tools and Language. Visual Studio v6.0, .Net  2008. Embedded Visual C++, Visual C++, and Visual C #.net. Windows 7 uses XNA framework and Silverlight.

SDK. For applications development, Microsoft offers the Windows Mobile SDK bundled with its Visual Studio all in one tool. For graphics functions custom OpenGL ES libraries are available. SDK offers generic emulators to use during development for testing the apps.

Developer Support. Operating System offers full control to the developer. Though low level programming needs specialized mobile development skills. Given the developer community exposure to Microsoft technologies, the learning curve is very shallow.

Application support
Windows Mobile Market Place. Less than 1500 apps. This is a major hurdle for Windows Mobile. However there are number of 3rd party app stores such as Handango which have over 20,000 windows mobile apps.

App Distribution. Available over the air via Windows Market Place controlled by Microsoft. Private OTA distribution can be done without too much trouble.

Enterprise Support. Available. Device Management Capabilities available through Sync functions and third party software.

Consumer Support. Considerable amount of applications are available for users to download free or at nominal charge on various forums. Wide range of device options is available.

Devices available

Current. Many devices are available. Multiple phone models from variety of manufacturer are available. E.g. HP, Motorola, Palm, HTC etc.

Future. Multiple device options are likely to continue to be available from number of manufacturers. Windows Mobile 7 holds the key to the future.

Pros / Cons
  • Based on popular .NET developer tools. Supports MS tools including Active Directory, Exchange ,etc  easily.
  • OS was not upgraded for a long time , for over 6 years,   and did not support the various rich features available in Android, iPhone, etc. Microsoft waited for a long time to revamp the entire Mobile OS platform. Now, with Windows Mobile 7, people are waiting to see how it has changed. However, none of the apps that exist today will run on WM7, it is not backward compatible.
  • Microsoft did not impose enough standard on how manufacturers will build devices using their OS. Hence applications built on one device usually causes developer a lot of problems to support on other devices. This increases the cost of supporting various platforms.
  • The OS is not free.  Device manufacturers have to pay a license fee on each device running the OS.







Operating System
Current Version.  WebOS v1.4.1. The most developer friendly OS ever!

Base Framework. Monolithic Linux based kernel with proprietary components developed by Palm. Runs on ARM processors.

Future Visibility. Recent takeover by HP might define a clearer roadmap in the next quarter.

OS Efficiency. Open OS. Very efficient in handling multiple tasks with proper utilization of the resources such as WiFi, 3G, GPS makes for longer battery life.

Device Management. Support for enterprise level device management is optionally available. Exchange Active Sync is available for Push emails.

User Experience. At par with iPhone/Android. Multi touch gestures and support for Accelerometer are available.

Web Browser. WebKit based browser with support for HTML5 and CSS 3 standards.

Storage. OS Supports external storage. None of the current devices have it though. For the application data storage SQLLite is available.

Hardware Support: Video Camera, A-GPS, 3G, WiFi, Bluetooth, Slide Out or Candy Bar Keyboard (QWERTY). Has Accelerometer and multi touch gesture touch screen. Inductive charging support available.

Multi Tasking: Full multi-tasking applications can be written.

Media Support. Audio formats: MP3, AAC, AAC+, eAAC+, AMR, QCELP, WAV; Video formats: MPEG-4, H.263, H.264

Development environment

Tools and Language. Eclipse IDE, JavaScript, HTML

SDK.  WebOS SDK  is available to developers. Developers use Ares for UI building with webOS mojo Framework SDK underneath. For the plug-in application development, WebOS PDK is available. The SDK also offers various emulators to be used for the development testing and debugging.

Developer Support. Operating System offers full control of it to the developer application via number of low level APIs and programming hooks. Web developers may easily develop programs. No specific knowledge on Mobile development is necessary.

Application support

App Distribution. Available over the air via Palm App Catalog controlled by Palm. The private OTA distribution can be done. Code Signing is mandatory.

Enterprise Support. Available. Device Management Capabilities available through Sync functions and third party software.

Consumer Support. Limited. Device hardware options available in the market are very limited.

Devices available

Current. Palm Pre Plus, Palm Pixi Plus.
             
Future.  No clear roadmap available. However indications are that HP WebOS tablet is one way in which HP is looking to use WebOS.

Pros / Cons
  • Based on very popular web development kit and JavaScript. Makes it easy for web developers to learn this new platform.
  • HP will probably announce a variety of devices, thus spreading the adoption of WebOS as a new platform. This will probably compete with Android and Windows Mobile as an OS options available to device manufacturers. There is also a school of thought which suggests that by October 2010, Web OS is headed for the HP WebOS Tablet.
  • The WebOS was taken up initially by lot of developers and development organizations, but the interest waned due to lack of devices running the OS. A resurgence is likely now that HP will spend on ensuring that developers get the necessary support for the platform


Market Trends














Data source: Gartner

The clear winners are iPhone and Android. Android more so – a growth of 800%YoY – backed by multiple carriers, buoyed by strong marketing campaigns. It is almost given that both of these will catch up with Blackberry in too for a horizon.

In the US, Android (28%) has already raced to the 2nd spot displacing iPhone OS(21%). RIM (36%) continues to be number one.


Phones grow, Smartphone even more.
Overall, the global mobile phone sales totaled approx 315 million units in Q1 2010 – a 17 percent increase over Q2 2009.

Smartphone sales to end-users reached 54.3 million units - an increase of 48.7 per cent from the first quarter of 2009.

Can Windows Mobile turn around?

Windows Mobile's sales decreased from 10.2 percent to 6.8 percent YoY.

Windows Mobile is losing market share. This is attributed to the rise of Apple and Google Android.

However, they were ripe for the taking. And have been so for some time now. Consider this – The Windows Mobile Kernel, CE 5.2, is unchanged since 2004. Processors have changed, multi touch came in Accelerometers, Magnetometers and the works, but Windows Mobile did not make any changes.

Now the company has now rewritten the mobile OS ground up to provide better user experience, but given that the competition is already accelerating, it will really need a miracle for Microsoft to overtake anyone. At best they can recover some market share with WM7. Note that WM7 is not backward compatible! This means all applications will need to be rewritten. At the very least this puts WM7 two years behind Apple and Android.

Another daunting aspect is that the windows mobile market place has less than 1500 apps (yes 1500 compared to 150000 plus on Apple). The very large number of apps on the 3rd party app stores for windows mobile will be rendered impotent as Windows Phone 7 is not backward compatible.


What of WebOS?

Palm announced it’s entirely new WebOS platform in January 2009 and then released it to developers in May 2009. The first device which ran the WebOS platform was the Palm Pre mobile device. Later the Palm Pixi was introduced in late 2009.

On April 28, HP announced it was going to acquire Palm for $1.2 billion and it will develop various kinds of devices running the WebOS platform. Until that time, Palm struggled to push the sales of the Palm Pre and Palm Pixi devices. The earlier versions of the WebOS platform were filled with defects and not many tools available.

It is being speculated that HP may even launch a WebOS Tablet by October 2010, what that means for the windows 7 Slate  (demoed by Steve Ballmer in his keynote in January at the CES) is not clear.

Other Highlights

  • Apple is registering the fastest growth of over 110% YoY in terms of sales of its iPhones and now with the iPAD.

  • Nokia continues to be the largest device manufacturer in the world.

  • RIM is very strong in the Enterprise market. Their newly announced OS 6.0 due this summer has lot of features, but it remains to be see if that will increase the adoption of applications.




Mobile OS market share and sales – Q1 2010 (Source : Gartner)








Mobile Device Sales Q1 2010 (Source : Gartner)












Here is the link to the Gartner Report: