Mobile platforms of the world!
Written by Harry Fairhead   
Friday, 06 August 2010 00:00
Article Index
Mobile platforms of the world!
Blackberry, Symbian and Palm OS
Windows Phone 7, MeeGo and bada

Mobile platforms of the world. No not SciFi hovering pads that you can jump on and zoom around - although that would be good - this is a look at the different mobile phone operating systems and more specifically frameworks that you can create apps for. It's not just a look at the technologies but also the ecosystem that surrounds them - how can you sell your app and who controls this.

Banner

First it is worth making the distinction between native and web applications.

A native application usually involves using an SDK and writing code specifically targeting the device in question. The advantage of writing a native application is that you mostly get access to the hardware of the device - GPS, accelerometer, multi-touch, etc. The disadvantage is that the app will only run on the device and you may have to sign an agreement when you download the SDK that determines how you publish and sell the app.

A web app, by contrast, uses nothing but HTML/CSS and Javascript to create a web page that only targets the device by taking its screen size and input features into consideration. A web app can easily be customised to suit other devices. The downside is that in general web apps don't integrate with the device as well as a native app - i.e. they run in the phone's browser and they generally can't get at the custom hardware.

The inability to utilise the custom hardware such as the GPS means that the application has to find some replacement for the missing facility or simply restrict what they do. Of course a web app generally isn't under the control of anyone other than the developer and you are free to market it how you like. On the other hand, web apps are often not accepted into any official application store and this can make marketing more difficult.

iPhone and iOS 4iphone

There is almost no need to introduce this particular platform as it is getting so much publicity - both good and bad - but surprisingly there is a lot to say. The first and  most important thing to point out is that to write applications for iOS you need a Mac and you have to use Mac tools. This is only a problem because the majority of programmers work with PCs and PC-based tools. It also means that if you don't have a Mac to hand then there is an initial upfront cost involved in starting iOS development caused by acquiring the hardware.

iOS is based on the Mac OS X.  Development is a matter of using Objective C for the procedural code and the Xcode designer to generate the user interface. Objective C is a lot like any modern oriented language and doesn't take long to master. You can create iOS apps using .NET languages with the help of Mono and with Javascript with the help of PhoneGap however in both cases you still need a Mac and the SDK for development.

iOS web apps do have an unofficial app store in the form of OpenAppMkt.

As you need the SDK to develop an iOS application you can only make the App available from Apple's  App Store. Authors receive a 70% royalty on sales. Apps can be free but the author still has to pay the App Store membership fee of $99. Apps can also earn revenue by showing advertising arranged by Apple. The App Store has over 200,000 applications and you can charge a one-off fee or a subscription.

One of the big advantages of developing for iOS 4 is that it not only runs on the iPhone but on the iPod and iPad.  There are many reasons to think that iPad application development could be more interesting and profitable in the long run than targeting the iPhone - a recent survey suggests that iPad users tend to click on adverts more and spend more time playing games and generally interacting.

iOS 4 devices are a single manufacturer devices and as such you only have to test on the one iPhone, iPad or iPod.

Androidandroid

Android is an operating system and development environment from Google targeting mobile phones, tablet and netbooks - although it is most commonly found on mobile phones with a small number of tablet devices. Although the iPhone commands most of the headlines, Android phones have a higher percentage share of the market - iPhone 23%, Android 28%

The operating system is based on the Linux kernel. App development is generally in Java, although in principle you can use other languages. In particular libraries are often created using C and are callable from Java. The Java is compiled to byte code and run on a special VM - the Dalvik VM. The SDK contains a plugin for the Eclipse IDE and everything needed to create and test an application.

Android applications can be created using almost any hardware and OS including the PC running Windows or Linux and the Mac running OS X. Android doesn't support Java ME applications because it doesn't provide the necessary class libraries.

Android is fairly open platform and developers are free to sell native apps anywhere, but there is an Android Market run by Google. Currently it has over 60,000 applications and charges a $25 submission fee. Royalties are 70% to the developer, but it doesn't support subscription charging. Currently in-app advertising isn't supported.

Android devices are made by a number of companies and this makes it harder to ensure that apps run on all devices.

Banner

<ASIN:0321743016>

<ASIN:1430233397>

<ASIN:1430230428>

<ASIN:1430231742>

<ASIN:1449388434>

<ASIN:1597495557>



Last Updated ( Sunday, 19 September 2010 09:56 )
 
 

   
Banner
RSS feed of all content
I Programmer - full contents
Copyright © 2013 i-programmer.info. All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.