Friday, September 21, 2012

Right Technology For Right Project : HTML 5/Native/Hybrid : Mobile App Development


After working a small period of time in mobile application development, especially in android, iPhone and windows phones,found that when we select a technology for developing mobile apps, we need to select the right technology for the right project/ product. It is very important, which technology is we are using in the project. We need to specifyHTML 5 ? Native ? Or Hybrid before move into the development of mobile apps. For specifying the right thing at the right place we need to think about the Pros & Cons of technologies which involves in mobile development. Let’s learn together what kind of application development strategics are available in mobile development.

HTML 5 / JavaScript web Apps

In this, the app is hosted on a web server but it will look like a native app. The user can  accesses the app using their mobile browser and they can bookmark the site to their device’s home screen and launch the app as if it was installed locally .
Pros
  • The app can be developed to work across a number of platforms and form factors from a single codebase. This can include mobile, tablet and desktop if following a responsive design approach.
  • The app is accessed from a device’s browser, so there is no need for app store/market place certification.
  • Updates and maintenance releases of the site can be deployed immediately as opposed to waiting for app store/market place approval before delivery to the end user.
  • Although the base technology does not provide a mechanism for monetisation, the publisher is able to monetise the app/service through a subscription model and retains 100% of the income.
  • The app can run offline through browser caching.
  • The app can access a device’s local storage and local database..
Cons
  • At this point in time, not all browsers have implemented HTML 5 features equally, so developers may need to provide workarounds.
  • Access to device hardware is limited: at present there’s support for GPS, limited support for compass and accelerometer (depending on browser), and no support for camera and microphone.
  • Not all browser vendors provide standardised support for accessing a device’s local database.
  • Access to a device’s address book, email and applications is not supported.
  • Bypassing app stores/market places reduces the visibility of an app (though considering the vast number of applications published application developers/publishers need to market their applications beyond simply publishing them to an app store/market place).
  • Gestures and touch input will need to be implemented by the developer (third party frameworks such as Sencha Touch do exist – though not every framework works across all platforms).

HTML 5 / JavaScript Hybrid Apps

In this the UI developed using HTML 5/JavaScript and is embedded in a  browser inside a native app. It will  looks and feels like a native app. Eg:  PhoneGap .
Pros
  • These hybrid applications are published through app stores/market places so benefit from increased visibility and can also be monetised.
  • The code base works across platforms, however in some circumstances the presentation layer may need to be adapted for each platform.
  • This approach reduces the cost of delivering an application across a number of mobile platforms.
  • Hybrid apps can access device APIs and sensors – though not all third party frameworks provide equal access.
  • Once installed locally on a device the application behaves the same as a native application.
Cons
  • In some circumstances hybrid applications may appear to run slower than native applications due to the implementation of the JavaScript runtime hosted in an embedded web browser.
  • Gestures and touch input will need to be implemented by the developer, although third party frameworks like Sencha Touch do exist (though not all frameworks work across all platforms).

Native Apps

In this apps are developed for a specific mobile OS .
Pros
  • Native app are optimised for device hardware CPU/GPU.
  • Gestures and touch input are provided through a device’s SDK and controls.
  • Simple and easy display of data in a variety of user controls, out of the box.
  • These apps have access to device APIs and sensors.
  • Native apps are published through app stores – this increases the visibility of an app, and means that the app can be monetized.
  • The apps is installed locally and has no external dependencies.
Cons
  • Native apps are built for a single platform only.For multi-platform support the developer/publisher will need to port the application across to other desired platforms, which requires more development time and impacts the cost of production.
Share with your friends !

1 comment:

  1. iPhone Application development
    :iPhone has created its own market in the mobile industry. It has created a competitive atmosphere in the market. It has come with the tremendous features and dynamic applications.

    ReplyDelete