0

I have checked out an application that besides the regulars, needs user management and push notifications. To make it cross platform and also make it available via web browsers, I am planning to build it as a Web Application (as it is called in Android). Is it a good idea? Or is it better to build a completely native application?

I have absolutely no idea of iOS development, but somehow think that a Web Application equivalent will surely be there, so that will reduce the effort required for an iOS application.

C--
  • 16,393
  • 6
  • 53
  • 60
absk
  • 643
  • 1
  • 6
  • 15

4 Answers4

5

You can find a neat comparison between

Over here : Comparison between Corona, Phonegap, Titanium

As such usage of such framworks versus native application development is discussed here : Using Phonegap for Native Application development

There is also another interesting C# solution named Xamarin

In my experience, (I have used PhoneGap with JQuery) it has comparatively low performance, low usability, and it lacks advanced control over your hardware. But, for people with good experience in web stuff will find it easy to learn and work with PhoneGap. And as such, the choice of selection merely depends on the application you are targeting to develop. If it is nice simple social app or something, go ahead with a cross platform solution. It can save you a lot of time and money. On the other hand if the target application demands high performance on the available hardware, go native.

Community
  • 1
  • 1
C--
  • 16,393
  • 6
  • 53
  • 60
4

It depends on a lot of factors.

If you have the time and budget (and expertise) a native app for each platform is always going to be the best user experience.

If you are trying to do something that violates Apple App Store terms and conditions, A web app may be the only option.

Web apps are relatively easy to build cross platform, but you'll still need to do a lot of platform-specific tweaking to get it right for each device. It's not the easy option, believe me.

Do not kid yourself that a web app will ever offer the same high quality experience that a native app will do. A web app may be a worthwhile compromise, but it's a compromise nonetheless. A web app cannot access the filesystem, camera, photo library, contacts or calendar, and it doesn't have access to hardware accelerated 3D graphics (one day it will, via WebGL and some of the new HTML5 APIs, but I'm talking about what's possible now).

Web apps are still relatively uncommon so you'll miss out on exposure and "findability" of having your app in the App Store / Android Marketplace if you do go that route.

A better option might be something like Appcelerator Titanium that lets you create cross-platform native apps using JavaScript, without having to learn Objective-C or Java.

Or, if you're determined to use HTML, you should consider using a tool like PhoneGap that lets you package up web apps as native apps for each platform without needing to write any platform-specific code (the app is still a normal web site, but it runs locally on the device, not in a browser, and has access to native hardware functions and contacts, calendar, etc).

You should also look at 3rd party web toolkit libraries like jQuery Mobile or Sencha Touch to help make your mobile web app look and behave as much like a real native app as possible.

Nick Lockwood
  • 40,865
  • 11
  • 112
  • 103
  • Is it possible to add push notifications, and use features like GPS from a web app? I mean, can the web components and the app components interact seamlessly? – absk Feb 03 '12 at 17:19
  • Not normally, but you can if you use PhoneGap. The Safari web browser doesn't have access to native APIs, but PhoneGap creates a JavaScript/Objective-C bridge to access native code with JavaScript, and even has a plugin architecture to add support for additional native functions. – Nick Lockwood Feb 03 '12 at 17:22
0

There are tools like MobiRoller for content based multiplatform mobile applications. You can create your application via a web based panel.

0

If you can give your users the same functionality, but without forcing them to be tied to a software download and update scheme, I view that as a win for them. Not having to maintain multiple incarnations of code per platform is a win for you.

I'd say if its functional as a web app, go for it.

Erik Dietrich
  • 6,080
  • 6
  • 26
  • 37