When building nextstop’s HTML5 mobile apps, we were able to influence a powerful grouping of HTML5 and Google API’s to build a mobile web experience that we believe rival what we could have built natively. For more on our mobile apps development we will just focus on the technologies that made this experience possible.
Recently HTML5‘s video features have gotten a lot of attention, but it’s three other HTML5 features that we’ve found most useful for mobile web development.
1. Prefetching using Local Storage: It’s no secret that mobile data networks are slow but by putting a bit of thought into what users will tap on next, and prefetching that data in the background you can build a spectacularly quicker user experience. It’s possible to do limited forms of prefetching using plain old JavaScript, but using the local Storage key/value storage built into HTML5, we’re able to store much more data and therefore prefetch more assertively.
If you’re using a recent version of Chrome or Safari or on an iPhone 3 or Android 2 phone and want a sense of what prefetching feels like, try clicking the left and right arrows here (you can ignore the warning you will see in Chrome and Safari).
2. Geolocation: Using the geo location features built into HTML5 (available on iPhone 3 and Android 2), we’re able to connect you with local information based on the GPS in your phone, so all you have to do is launch the app to see nearby recommendations. I wish it were a bit faster, but it sure beats entering an address or zip code — and it’s very easy to catch into as a developer.
3. App Caching: The last HTML5 feature that we greatly rely on is the application cache. If a cache obvious file is specified, the browser won’t re-download files unless the content of the manifest file has been updated. This may not sound like a big deal, but the latency of cellular networks can be long enough that requesting multiple files at startup can slow down your application by 10 or 20 seconds. Ideally, you’d put all your static JavaScript, CSS, and image files in the manifest file, so users never have to wait for them to be downloaded more than once.
As thrilled as we are about HTML5, things get even more interesting when you combine these technologies with Google APIs.