(my post that was posted in a re-share on another thread)
- HTML5 webapps can work offline using localStorage, it's just that nobody's really using it yet (Here's a good early example optimized for iPad http://everytimezone.com/
- Correct, iOS doesn't allow access to the device's file system. Other systems do, and support for file access is provided by hybrid solutions like PhoneGap http://www.phonegap.com/
- It CAN be slower, considering native apps get most of their content downloaded as soon as you download the app (ever download a 40MB+ app? Annoying, right?). However, many apps are essentially webviews (Yelp, Facebook, Google+, etc) and need to retrieve the information online anyways. Any sluggishness is most likely associated with poor coding: http://twitter.com/#!/brianleroux/status/83062819997757440
- Adding attachments is more painful for the same reasons as point #2. PhoneGap aims to solve those issues.
- Correct, no push notifications. BUT here's something to consider. Apps don't open links. So anytime you open a link in twitter, email, text message or other format, it opens the browser, not a native app. So an HTML5 push notification can be sent via email (think of "John Doe just posted on your wall, reply here") and that email gets "pushed" to your phone. Bonus: that gives you a nice paper-trail/bookmark/sharable record of that notification.
- Correct, the app gets reloaded on browser relaunch. But you can add sites/web-apps to your homescreen to emulate native app experience, and now in iOS5 run them in fullscreen just like a native app (i.e. no URL bar, browser chrome).
Here's a couple more legit qualms with web apps:
- No access to certain device APIs yet (camera, contacts, NFC, media, etc)
- Sluggish scrolling effects (especially in Android) in browser can be inferior to native scrolling effects (which are hardware-accelerated by default)
- Graphically-intense apps (especially games) don't have the same fidelity as native apps
- "Findability" in an app store. Your app is buried regardless. Search engines, social media, buzz can spread a web app far and wide
- "Native VERSUS Web". It's a bullshit argument. There's certain things that native apps do better than web sites (or web apps), and other things that the web does much better. A smart strategy utilizes both to maximize mobile's potential.