I stumbled upon this presentation, shared by Chad Udel, comparing four main mobile OSes. Chad used this for his presentation at mLearnCon 2010. Take a look -
So Native Apps vs Web Apps?
The presentation gives a good initial comparison of the 4 OSes. The question however will be which phone to target? Should you make a web app that works on all of these phones or a device specific native app?
Both types of solutions have their advantages and disadvantages. Here’s what I think they are:
- Platform independent development, so can reach a wider range of audience
- The app can be delivered instantaneously as there are no intermediate delivery platforms like app store
- Faster development and lower maintenance
- High end (rich) applications can be developed if HTML5/CSS3 technology is used for development, which also enable use of audio, video and animation within the application
- Performance would be lower as compared with that of native apps and will also be dependent on the web access speed
- Lets you access the device’s features like camera, accelerometer or the data like address book
- Superior in terms of performance and user experience
- Works only on targeted smartphones
- Development time would be more so would be the maintenance overheads
- The app has to go through some kind of app store / marketplace before it reaches the intended audience and the process could be time consuming and fuzzy
The choice really depends on the richness of your mLearning solution (user experience, performance and features) and the range of audience (rather smartphones) you are targeting. There is a range of third-party frameworks and tools that are getting available to develop reasonable apps which may let you use goodness of both the types.
With advent of HTML5 and the emergent web standardization across smartphone devices, I feel rather optimistic about web apps as better choice over native apps in near future.