Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Are Hybrid Mobile apps generally considered inferior to Native apps by developers in the tech industry?

For a college project, my group was planning on making a cloud messaging app for Android. Initially we began development by studying and using Ionic Framework and Phonegap to create a Hybrid app.

Based on what we had read and learnt so far what we understood was with Hybrid app development allows us to code with web technologies(HTML, CSS Javascript) which we were quite familiar with in far less time than building a Native app. It also had the plus of running on multiple platforms with very minor tweaking.

But as we moved forward we got some strange feedback from many of our colleagues and people in the field which all pointed to one thing; a general distrust and doubtfulness about Hybrid apps.

Eventually we decided to go for a Native app due to this feedback among other reasons but it always bothered us why people felt that way.

like image 479
Nuwan Jayawardene Avatar asked Apr 21 '17 20:04

Nuwan Jayawardene


People also ask

Is hybrid app better than native app?

The advantage of hybrid apps is that they are typically easier and faster to develop than native apps. They also require less maintenance. However, the speed of your hybrid app will depend entirely on the speed of the user's browser. Ultimately this means hybrid apps will almost never perform as fast as a native app.

Why are hybrid apps slower than native apps?

Hybrid applications don't perform as fast as native apps. Their architecture has an additional layer between the source code and the mobile platform, making them slower. Of course, as technology and mobile frameworks are progressing, the difference becomes negligible, especially if your application isn't complex.

What are the advantages of choosing hybrid application development over native apps?

Hybrid apps can run both Android and iOS having just one code base. This means you don't have to build the app for each platform as in the case with native apps. Mobile developers create the single code base that can function across Android and iOS.

What is native and hybrid mobile application development?

Hybrid applications are the combination of both native applications and web applications. Hybrid apps run offline on the devices. Hybrid apps are written by using the web technologies like HTML5 and CSS. Hybrid apps are designed in a way to render the existing website's content in an application format.


1 Answers

Yes, the general sentiment is that Hybrid apps are inferior to Native apps. While this can be frustrating for developers more familiar with web technologies, it does come for good reason:

  1. Inability to interact with native components: Although plugins such as cordova-plugin-statusbar exist, there are limitations interacting with and manipulating native components using web technologies. One great (and frustrating) issue I have personally run into is the inability to have an input at the top of they keyboard as the keyboard animates in. This sounds like a nonissue until you look at an app where this is an essential feature such as in a chat app like Slack.
  2. 300ms delay: Although modern browsers are beginning to phase this out, the fraction of a second delay present on Hybrid apps makes the app feel slow and non-native. This issue is becoming less of a factor as more users adopt workarounds such as FastClick.js and some frameworks such as Ionic eliminate it by default.
  3. The haters are right (sort of): While Hybrid app development has come a long way, there are still minor glitches and laggy functions that are just not present in a Native app. Screen transitions, app switching, and battery life are still common areas for bugs to appear and likely will be for some time, even if they are starting to become less and less noticeable.
  4. There are some great Native solutions: With newer languages such as Apple's Swift it is becoming easier to code in a Native language. That being said, tools such as React Native fall into a gray area between Native and Hybrid by allowing developers to code in friendly technologies such as JavaScript but compile into native code.

The moral of the story is that it really depends what is important to your specific use case. Hybrid apps have become a viable option and are no longer an embarrassing side show. Conversely, there are still minor aspects of interacting with the Native UX that are not yet possible except with a Native app.

Overall, I recommend mapping out your project and determining if your app needs any of the benefits of a Native app. With tools such as the Ionic View app it is easy to put together a basic mockup of your app and test on a real device whether or not a Hybrid app will work for you.

like image 182
Tyler Avatar answered Nov 03 '22 01:11

Tyler