Some insight into Mobile OS history
The first mobile operating system came into existence in 1999 when Nokia released its Symbian OS. By today’s standard it was pretty simple, even though at that time it was the most advanced technology a consumer could have in their pocket, and it was a big hit for several years before the arrival of touch screen era.
Around the same time, Microsoft also introduced their mobile version of Windows OS on devices called Pocket PCs: touch screen devices bundled with a compact version of Windows XP. Some executives and power users were fans, but it remained popular only amongst a very small group of people.
Up to this point, mobile application development was slow and people had low expectations for the format, but by the introduction of IOS (iPhone OS) on iPhone in 2005, things started to gain pace dramatically. Apple were the first to introduce the concept of a common place from which anyone could buy applications developed by other developers and approved by Apple themselves, which made IOS a big hit.
In a similar manner Google launched its own open source mobile operating system, Android. Uptake was a bit slow initially, since no company wanted to use an open source OS, but then it took pace and most mobile manufacturers started creating phones with Android OS.
The problem today for anyone wanting to launch an app
Today’s mobile development issue is that if a organisation want to reach everyone then they have to develop an app for multiple operating systems, which needs expertise in OS such as IOS, Android, Symbian, Windows, RIM, etc. – which cannot be possible for many organisations since this needs a lot of money and time. And even if they release an app across all OS’s then it will be almost impossible to maintain future changes.
The solution for cross-platform mobile development: Html5 + Css3 + a cross-platform compiler
Pros of using cross-platform mobile development :
- Programmers don’t need to learn different languages.
- Programmers can use their HTML5 skill which most of them already know.
- Future maintenance is really easy since they have to make changes to the same source code base.
- Time- and money-wise this is the best solution.
- Best for keeping a similar user experience across all mobile platform.
Cons of using cross-platform mobile development:
- Potentially poor performance.
- Potentially limited in features since programmers will not be able to use anything unique to a particular mobile OS.
Common cross mobile platforms worth considering
01. RhoMobile: This is an open source framework created by Motorola based on Ruby. RhoMobile also provides RhoHub, an online portal to create RhoMobile apps on the web and RhoSync portal to store users’ data. Otherwise RhoMobile can be implemented with respective framework IDEs
Supports: Blackberry, IOS, Android, Windows mobile and Windows phone 8.
02. PhoneGap : PhoneGap is a free and open source environment. Developers have to use respective IDEs to develop apps, but PhoneGap have also provided an Adobe Air IDE to make life simpler and provide extensive help via their site.
Supports: IOS, Android, Blackberryr, WebOS, Symbian, Windows Phone 7 and 8, Bada.
03. Appcelerator: The Titanium Development Platform from Appcelerator has got an enormous number of features and is widely popular.
Supports: Android and IOS.
04. MoSync : This multi-platform mobile app dev SDK tool is also free and open source and is based on standard web programming. MoSync now includes Eclipse-based IDE for C/C++ programming.
Supports: Android, Symbian, IOS, Blackberry, Java ME MIDP, Moblin, Windows mobiles and phone.
05. Iceium: This is one of the newest frameworks, developed by Telerik. It has a web-based tool to create mobile apps and a window-based desktop application as well which, in-turn, stores your app changes on the cloud. Iceium is really cool, but this one is really limited to Android and IOS only.
Supports: Android and IOS
06.NOMAD: One for all Visual Studio developers, this is an extension to Visual Studio from which developers can create a mobile app straight from the application. Apps will be stored on NOMAD’s server, from where users can then publish. However it is very limited in framework ranges.
Support: Android and IOS
Some useful tips before diving into cross-mobile platform development
- One should not pick a solution for just its ability implement across multiple platforms. Developers should first ask their clients about intended usage of apps, and make sensible decisions based on the answers.
- If the application needs serious processing or graphics then a developer should always opt for native development. Most of the above frameworks are early enough in their life that they run a real risk of introducing performance issues.