The PIT
Röster från ITM-koncernen.

Three ways to make a mobile application

November 30, 2011 10:42 by David Woxberg
Broadly speaking, mobile applications can be created in three different ways. This article contains a brief explanation of each of the three application types.

When people talk about mobile apps, they usually refer to native applications – programs that are installed on mobile phones.

Native applications can often be faster than web applications (more on web applications below). In practice, this may mean that the user interface in a native application is more quick and responsive compared to a web application.

Native applications also open up more possibilities when it comes to accessing phone features, including hardware features (such as Bluetooth access). They are also a good option for mobile games or applications that rely heavily on 3D functionality.

Native applications can be sold or offered for free through application stores (such as the App Store). This makes it easy to distribute the applications.

While many native applications are connected to the Internet, they do not have to be. It is also technically possible to use an Internet-enabled native application in offline mode, meaning for example that the user can access data (such as text and images) that has already been downloaded to the device. However, that requires that offline mode functionality has been enabled by the application developer.

Web applications

A mobile web application is a HTML based web site that has been adapted to mobile units, such as cell phones and tablets. Mobile web applications are accessed through web browsers.

Compared to native applications, mobile web applications are generally limited when it comes to accessing and using cell phone-specific features (including hardware features, such as Bluetooth).
The biggest strength of the mobile web application is reach. Different mobile platforms (such as iPhone and Android) are based on different operating systems but most, if not all, new cell phones contain a web browser.

While all mobile browsers do not work exactly the same, they are relatively similar. This makes it possible to create a mobile web site that can be used on more than one mobile platform. This limits the amount of code that needs to be written and maintained in order to support multiple mobile platforms. Native applications can require more work in comparison since a new native application (with unique source code) needs to be created for every platform that needs to be supported.

Web browsers in new cell phones are often powerful, which means that web applications can contain beautiful and advanced user interfaces. Tools such as HTML5, CSS3 and Javascript can be used to achieve this.

Internet access is required to access a web application. Once a web application has been accessed, however, it is technically possible to access it offline if the developer has enabled offline access/offline mode (more on this below).

Wrapped web applications

There is a third alternative – wrapped web applications – that combines the power of the native application with the reach of the mobile web application. This is a native application that contains a web browser which is used to open a mobile web site.

The native application is basically a wrapper for the mobile web site. If properly done, the mobile web site can be re-used again and again within different application wrappers. For example, the same mobile web site can be wrapped in a native iPhone application and in a native Android application. This limits the amount of code that needs to be written and maintained in order to support multiple mobile platforms.

Wrapped web applications can be distributed through application stores. In addition, they have the same access to phone features (such as bluetooth access) as regular native applications do.

Since a wrapped mobile application is largely based on web technology, it can be a bit slower than a native application.

A wrapped mobile application does not necessarily need to be connected to the Internet. Web pages and other resources can be placed locally in the app which makes it possible for the user to access them without the application ever being connected to the Internet.

Offline mode

Many mobile applications are connected to the Internet. But mobile app users do not always have Internet access. Therefore, apps often contain a so-called offline mode, meaning that mobile applications that require Internet access to fully function can be used to some extent even when the Internet connection is missing.

More specifically, offline mode can mean that certain functions are only available when the application is connected to the Internet. It can also mean that content that has already been downloaded, such as text and images for a news article, is saved in a local database that belongs to the application, making it possible for the user to read the article offline.

Offline mode can also be enabled in web applications. There are different ways of doing this, including the following HTML5-related features:

  • Specified resources such as HTML pages can be cached on the device.

  • Data can be saved in a database on the device.

  • Data can be saved on the user’s cell phone in key-value pairs.
However, since different mobile web browsers do not always work the same way, it is hard to guarantee that the three methods mentioned above will work in all mobile web browsers.


Tags:
Categories: Android | iPhone | Mjukvara | Mobilt | Teknik
Actions: E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed