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.
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:
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.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.