In the last days there is breaking out a fight among developers (and others) again.
Which is the best approach to develop mobile apps? Web or Rich Client (native apps)?
I say: Take the best of both and develop Hybid Mobile Apps, which look like rich clients, behave and will be installed like Rich Clients, but which largely depend on a web based SOA backend and/or integrated web pages.
The Rich Client is the only one, which creates, im my eyes, the important app identity.
The user searches for (in the app store), loads and installs something, which resides automatically (with icon) on his phone (almost on one of the home screens). This creates the app identity and thus the willingness to spend money for these kind of apps. Pure web apps are anonymous, there’s no store, no download, no installation, no icon (if I don’t do it on my own), no splash screen…These are just links like many others, and the user is used to get those for free (like he did in the internet before and for years).
The Rich Client can integrate much more easier with other apps and functionality on the phone (think of the intent technology in the Android space or think of your beloved twitter app, which can send links from your browser or pictures from your camera).
The web SOA background and integrated web pages give you all the advantages, why we all love this kind of development (and to be honest, prefer). Nothing has to be deployed or installed to/on the handset. You develop once and can use these results for many handsets. You don’t waste resources on the handset (battery, CPU etc.).
So don’t fight and combine the best of both, and in the end it will be an incremental approach.The better the browser gets, the more you can port app responsibility to it.
But don’t forget about the user’s app identity and your target: You want to earn money! Or don’t you?