Author
Mobile: Native Apps, Web Apps, and Hybrid Apps

The rapid development of mobile application market is a result of a huge increase of the number of mobile users. It is not surprising that business owners also tend to become more “mobile”.

When a person or company decided to get closer to smartphone users creating a mobile app, the questions arise: what type of application you should choose? What are the types of mobile applications?

  • What advantages do you get when you select a specific type of application?
  • What are the limits for different types of applications?
  • Which application is right for you in a particular situation?

We’ll try to give clear answers for this questions.

Actually we can divide apps for 3 types:

  • Web apps
  • Native apps
  • Hybrid apps

applications html


Native applications development

This kind of apps is the most data – hungry, but at the same time it allows the maximum usage of the opportunities offered by each particular operating system. Native apps are downloaded through app stores (App Store, Google Play or its affiliates, etc.) and installed in your smartphone. The main advantage of native applications is that they are optimized for a specific operating system, and, therefore, work properly and quickly. They also have an access to hardware devices, such as camera, microphone, accelerometer, geolocation, address book, player, etc. You can also receive push-notifications. Another plus is economical resources consumption of the phone (battery, memory). Moreover native apps can fully or partially work without Internet connection, therefore users do not dependent on the quality of communication and can use the application whenever and wherever they want. One more additional characteristic feature of native app is safety. Decompilation (getting the sourcecode) is quite time-consuming and sometimes a very long process, so the possibility that someone else will use it for their own purposes or just simply for spam is very small. Of course, development of a native platform is more complicated and longer than using web-based technologies.

Native applications

Advantages:

  • Highest functionality and working speed
  • You don’t need any Internet connection
  • They have an access to the software of  smartphone(GPS,camera,player). Also they are distributed through app markets.

Disadvantages:

  • More expensive and its development takes more time
  • Developer should have specific knowledge of writing the code
  • It works only with one platform
  • In order to change something you have to avoid updating

Web applications are also called html5 – applications. This is, in fact, the site which is optimized for smartphone. The user interface is created by means of standard web technologies. However the difference between web application and adaptive layout of the site is not very big, because standard web technologies are used in both cases, and speed is limited because of the qualty of the Internet connection. Users and even developers are confused sometimes.

You don’t need to download these apps from the app store, but sometimes such applications are downloaded from the official store and has their own icon on the screen of your smartphone.

As a rule, this is done as follows: first, all the content and interface is written by means of web technologies. The result is a certain set of interconnected html-pages, which can be transferred without any changes to any platform. Then, a simple application is created in the development framework (xcode, eclpise etc.). It consists of one screen with built-in browser, which displays written pages. Thus, it appears as if it is a native application that is distributed through stores, but, in fact, written by means of  web technologies.

However, it will be clear for users that the quality does not correspond with the native development.. The  main advantages of developing web applications are cross-platform nature and the price. Unfortunately, the quality won’t be very good. At the same time, if you want to further expand and develop its functionality, it is likely that you will rewrite this application from the ground up..

Regardless of the installed operating system, such applications can not use the software of smartphone.

Web applications are not always safe, because they can’t codify file system. In case there are some updates and custom programming you need to make ann app once again.

Here are represented some main advantages and disadvantages of web applications.

Web (HTML5)

Advantages:

  • Cross platform nature
  • You don’t need to download them from the store
  • You can easily adapt an ordinary website
  • It’s easier to find web – developers than developers for a specific platform.
  • Simplicity of making and supporting

Disadvantages:

  • You need some Internet connection
  • There is no connection to the software of your smartphone
  • You are not able to send push-notifications
  • Internet browser should be opened
  • There should exist some payment system to sell it

Hybrid applications combine some features of native and web applications: cross-platform nature and the ability to use software of the phone. However, it all depends on how developers will use the tool. Currently, the most famous and popular frameworks for developing such solutions are PhoneGap and Xamarin.

These applications can be downloaded through the app stores, and at the same time they have an ability to update some information. Hybrid applications require some Internet connection, because web part is updated through the Internet. This is probably the most popular way of building mobile applications, since it has the organic structure of distribution. However, its development is faster and cheaper than with native applications. As a rule, user is not likely to notice the difference between the native and hybrid application.

Hybrid applications

Advantages:

  • Functionality of native app on the independent platform
  • The possibility of independent updates.
  • They are spread through appstores

Disadvantages:

  • The limited volume of database saved on the phone, which influence the ability to download something more from the (html5 – 50 Mb);
  • Impossibility  to use the general search on your phone
  • Limitation on the access to the accelerometer,gyro scope, geolocation, video capture;
  • Impossibility of clear work with the file system (creation and control of files and folders)
  • Non-native interface which looks like the same on every operational system;
  • The necessity of creation of different components from the ground up (animation, etc) while in the native apps its easier and quicker to use ready-made components.

To sum up, when you choose a specific kind of app, you take into account the main aim of making it. You have to decide what for do you need this app, and what its functionality can give to your company. If you make an app for your clients, it is important to make it very comfortable in usage. We suppose, you don’t want your clients to be badly impressed with your mobile app. Even if you try to make it once again with better quality, It would be very hard to persuade your clients to download it. If you need data intensive, high – speed and high quality app you have to turn to native app developer.

You can handle with web app if you your clients have a constant access to the Internet, and the necessary app functionality is minimal (e.g. only data viewing). As a result it would be tailored interface for information scanning.