What Does “Native” Mean When Refering to Mobile Web Applications

When working with web applications and mobile applications, you will often hear a lot of people talking about “native” apps versus Web apps, but it’s not always clear what the difference is between these two?

According to Dictionary.com, native when referring to computers means:

“designed for use with a specific type of computer”

When you’re talking about applications on mobile devices, a native application is one that has been written for a specific operating system, either iOS (iPhone and/or iPad) or Android, and is not HTML repurposed.

Most Web applications are not native to any mobile device, and as such can run on any of them as well as desktops and non-smartphones. Basically, a native application must run in the software for which was written, but a Web application has a wider reach because it can run in any Web browser. 

Advantages and Disadvantages of Native

There are advantages and disadvantages to native applications. By making a native application, it means that it can take advantage of features of the operating system that are not available to web applications. Things like: tilt sensing, touch events, and even the phone or camera features of a mobile device can be used as part of that application. Plus most native applications run faster than their Web application counterparts because they have more direct interaction with the operating system and don’t need to parse HTML or JavaScript first.They also do not need to rely in Internet connectivity.

One of the most common reasons why people want to make native applications rather than Web applications is that you can sell native application in the various app stores that these mobile device use. While it is possible to sell Web applications, it’s much more difficult and most developers end up offering their Web applications for free.

Working with Web Applications

If you are working on an HTML Web application, you shouldn’t despair. There are ways to convert your Web applications into native applications for both Android and iOS. One of the easiest is PhoneGap. With PhoneGap, you can load your HTML, CSS, and JavaScript into the program and then convert it into a native application ready for use on Android and iOS (as well as other operating systems). PhoneGap Build will even let you create one application for free.

So if you decided to forget about HTML5 because you couldn’t use it to create native iOS or Android applications, you should think again and consider using a program like PhoneGap (or SenchaTouch or one of the other tools out there) to convert your web app to a native app.You may even choose to publish both a Web application from the HTML5 work you have already done, as well as a native app that you can converted. With this approach, you may, indeed, be able to realize the best of both worlds!

Edited by Jeremy Girard