Brief overview of HTML5 and native mobile development approach, and how each solution affects location tracking in mobile app.
There is no doubt that using HTML5 location tracking API is more effective (in terms of time and cost) than native. There are a few reasons for that:
- It’s cross-platform solution. That means you don’t have to waste your time and money on porting your application to different platforms.
- You don’t have to deploy your application to different markets as well.
- It’s much more easier to make an update (than in case of native application, distributed via market).
But, on the other hand, there are quite a few drawbacks of such approach (if compared with native solution):
- If you just want to define approximate user location, HTML5 API is OK. But in case you need to perform continuous user location tracking, you should consider native platforms that can provide combined methods, using sensor data in addition to regular GPS/Networking location definition. Such methods will ensure better accuracy and lower level of power consumption than regular location (retrieving from GPS or location services).
- Web application lifecycle is hidden to browser application. And that means such app won’t be able to perform any actions while device is in sleep mode or run in background (when browser is minimized).
- HTML5 push notifications can be only received if browser is active, and provide additional battery consumption, which, probably, will put users off using your app.
- Usually, native application UI provides better user experience (accustomed controls and better response time) than web-based.
- Deploying application to market requires additional effort, but, on the other hand, markets provide additional advertising options and promotions for new or highly rated applications.
- Native application can access some specific system features (like status bar notifications, widgets - in case of Android platform) and thus improve user experience.