Mobile Apps VS Hybrid Apps

I’m at a point where I need to decide on a future path for adding mobile application front ends to the Elixir backends.

So far I have tested native development with Android studio and Xcode, Cordova/Phonegap and React Native.

I’m actually leaning towards native app development and maintaining 2 code bases. My apps don`t have much logic in them. 99% of logic is server side. They are mainly forms and master detail views.

Just curious about what the general opinion about making native vs hybrid apps are in hope that I`ll get some knowledge I don’t have to further base my decision before I chisel them into stone.

1 Like

I’ve spent a lot of time working in this area and have some Pros and Cons handy.

A responsive web mobile application:

  • Provides a usable experience
  • It’s easy to change quickly
  • Offers a single code base and delivery model
  • Allows folks familiar with web page development to (mostly) to re-use skills

it also:

  • Requires Connection (for the most part)
  • Based in fairly New and inconsistent technology
  • Inconsistent User Experience
  • Limited interaction with the device (say accelerometers)

The Native mobile application:

  • Better Quality User Experience
  • Real-Time, Two-Way, Communication, 24×7, Anywhere
  • Allow you to tailor – Resources, Bandwidth, Information, Functionality
  • Full Access to the Device – performance
  • User’s preferred model (85% of time folks spend on their phones is in native apps, even when a web app is available e.g. Facebook)

but also:

• Require Specialized development skills
• Require Multiple code bases
• Updates happen more slowly

A quote from

At their best, [native apps] do more than just repackage existing content and functionality; they also present navigation, content, and functionality in a way specifically optimized for the measurably different ways in which people actually use their mobile devices.

It comes down to an intersection between your customer’s needs, and your own. A native application will provide the customer with a better experience that is more tightly integrated into the device. You will have the opportunity to get better performance, particularly if your app is compute bound. To do native development you will have to learn the language and frameworks of each platform.

A mobile-web or hybrid application can be much easier to develop, particularly if you already have skill in HTML5, CSS, and JavaScript. The user experience will never be as tightly integrated as that of a native application and it is much harder (though not impossible) to take advantage of device features like accelerometers or the camera. Mobile web apps offer the promise of cross-platform development with the caveat that something that is designed to run anywhere will look out of place everywhere.

(In the interest of full disclosure I’ve been an iOS native application developer since 2007 but have been involved with native, web, and web-hybrid mobile projects.)

1 Like

This is a fantastic response , thank you!

My main gripe with hybrid apps is the time I usually spend after the app is done.

1 Like

But it really depends of your use case. There are evidences that in e-commerce niche, web apps are bringing more engagement, at least it is what being said by google in this post

But after all, I tend to prefer native development.

1 Like

A responsive web mobile application:

  • Requires Connection (for the most part)

The Native mobile application:

  • Real-Time, Two-Way, Communication, 24×7, Anywhere

Well, uh, not exactly :slight_smile: Your app still needs to handle being offline
or having very low available bandwidth at times, native or not…