Possible Technology Technology
App hybrid native web possible

Web Applications vs. Hybrid Apps vs. Native Apps

For more than 8 years in Possible we have been carrying out development projects of digital solutions that require applications designed and adapted to be used on mobile devices.

What are the options?

There are several options when it comes to developing or digitising processes to be used by end users on mobile platforms or devices. In this post we will discuss the most used ones, which are: Web Apps, Hybrid Apps and Native Apps.

applications web hybrid native possible

WEB APPLICATIONS

Web Apps are web applications, i.e. web pages, but which are designed and developed so that they can be used from mobile devices (tablets or mobiles). In this case it must be taken into account that for the web application to work on different mobile devices it has to be designed and programmed for this purpose. Otherwise, the graphical interface (what the user sees) will not be visible, readable and usable from tablet or mobile devices.

The main challenge is to make the web application Responsive, meaning that the elements on the screen adapt as the screen changes size and resolution. Making a responsive web app can be simple and inexpensive if you use templates or development tools that are already designed for this purpose. If it is an extensive, complex and custom-made web application, the cost will increase in both graphic design and programming, as the original design for desktop screens must be adapted to mobile screens.

Generally, in projects with custom designs, 2 viewports (window size) are usually specified for which to adapt the design, one for tablets and one for mobiles. This means that it may not look correct in intermediate sizes, i.e. it will not be 100% Responsive but will be adapted to 2 or 3 types of screen, which is generally sufficient for the app to be used on 99% of mobile devices on the market.

Nowadays, there are so-called progressive Web apps, which include functionalities such as sending notifications, and other functionalities more typical of hybrid or native apps, and it is important to take them into account in terms of the options for implementing a mobile solution.

NATIVE APPLICATIONS

On the other hand, we have the option of native applications, which means that it is an application for Android, one for iOs, for Windows, etc. In other words, developing the mobile application in the environment, language and for the operating system in question.

This is the option with which the highest level of detail is achieved as it allows the options and features of each operating system to be used to the maximum. It also allows access to all the elements of the mobile phones (gps, gyroscopes, camera, etc.) in a more direct and simple way.

HYBRID APPLICATIONS

And finally, there are hybrid apps. These apps are a mixture of web application and native application. In this case, we will have a mobile application that can appear in the app shops and be downloaded for both Android and iOS. However, the programming of these apps is carried out in web languages and environments and the content of the app is mostly web-based. The main platforms for developing this type of application are Xamarin, Ionic, Apache Cordova or Flutter.

In the case of hybrid apps, the navigation and certain aspects of the app seem native and some of them are, in other cases, such as forms, presentation of information… they are web, which is why they are called hybrid.

In addition, this type of app has or allows functionalities that web apps do not, such as access to various elements of the mobile phone such as the camera, GPS, the possibility of saving data files and the use of different phone memories to save application data, etc.

On the contrary, most of these functionalities are developed under wrappers (or plugins) and when they fail it is difficult to get to the root of the problem as they are not developed in the code of the device itself.

The great advantage of the latter is the possibility to develop in one environment and deploy in several at the same time.

application web possible  hybrid native app apps

Why choose a Responsive Web App?

If you are looking for a website that can be used on mobile devices and all the functionality is developed for use on computers, this is undoubtedly the best solution.

It means not having to hire specific programmers to develop hybrid and/or native app technologies, and the same company or developers who have made the website for desktop can make the necessary adaptations for mobile use. If the product is still in the design phase, the following questions should be asked:

  • Do we need specific functionalities or access to components and services of the phone or tablet such as gyroscopes, camera or phone, microphone, fingerprint or face identifier, etc.?
  • Is it necessary that the application work without an internet connection?
  • Do we need the application to have an icon and be downloadable from Google or apple shops?
  • Do we need the user to receive notifications directly to the phone?

If the answer to these questions is No or the application could be made without any of these features, then the best option is to make a web app or a responsive web application.

Why choose a Hybrid App?

If, on the other hand, we need the application to be able to download, perform offline actions, receive notifications and/or access certain services on the phone, it is very likely that the hybrid application will be our best option.

This option is above hybrid apps if we don’t mind having the same graphic design for all platforms, and that there is no difference between iOS and Android for example, or if there will be no difference between one operating system and another.

It is also a good option when the functionalities to be developed are relatively simple and the application does not require the use of phone databases.

Development is done in a language and on a platform, which reduces development time and costs compared to a simple native app.

Native application possible web app apps hybrid

Why choose a Native App?

When does a native app start to compensate for a hybrid app? For example, for video games or applications that must be efficient in the use of the phone’s resources, memory, processor and other services or functions. Also if you want the look and feel of the app to be different on Android and iOS and respect the usability of each platform (for example, menus and navigation are very different on Android and iOS).

Also, developing functionalities based on phone elements such as camera, microphone, Bluetooth, wifi, gyroscopes, accelerometers… can give problems in the testing phase in some phones when they are developed in hybrid solutions because there are a multitude of different phones with variations. For example, the operating system communicates with the different elements of the mobile and the plugins or wrappers of hybrid applications to do certain things with the tools of a mobile may not work well on all devices. Therefore, if what we want is guarantee, efficiency and performance, and differentiation between iOS and Android, it will be better to choose to develop each application natively.

And you? Did you know these types of apps?

Author

Iago Ocarranza