8 Reasons Why We Abandoned the Development of Hybrid Apps

Mentalstack
The Startup
Published in
5 min readSep 25, 2019

If your business needs a mobile application, will you most likely be faced with a choice — a hybrid or a native?

Native applications are written separately for each platform. You need them as much as the operating systems your target audience uses. Most often, customers are asked to make 2 applications — for iOS and Android. Each of them is in the native language of the platform (Swift and Objective-C for iOS, Java, and Kotlin for Android).

A hybrid application is one solution for all platforms at once. JavaScript, C#, or Dart code generates through frameworks into native ones.

On the net, you can find terabytes of information about the differences between hybrid and native apps. Someone delves into the topic, talking about the nuances of development, someone writes briefly and in simple language, so that the user understands. But how to understand what to choose if you are a customer? There are several reasons why we only make native applications for clients. Now we’ll explain why.

Saving

The development of one application for two platforms is on average costs the customer 30% cheaper. Many people like the opportunity to save. But the budget to support such a product, as a rule, greatly exceeds the amount saved on development. Therefore, in the end, the hybrid will cost you more than it might seem initially.

Support

When an error creeps in the code, the hybrid application stops working immediately on all platforms. And if it breaks after you have stopped working with the developer, then finding a new programmer who will deal with error correction will be more difficult and expensive.

You can add all new functions to the native application right after their announcement. With a hybrid, you will keep up with trends all the time. You will have to implement the functionality yourself or wait for the framework to change, which can take from month to a year.

Functionality

A native application can use the capabilities of a mobile device without restrictions. For example, augmented reality or using a voice assistant to implement a hybrid will be much more difficult. Also, there are more native libraries for solving specific problems (neural networks, image processing, complex calculations, maps).

Performance

Since the hybrid code is written for two platforms at once, during code generation in native languages, unnecessary actions arise that lead to an increase in processor load and lags. Animations will not turn out so high-quality and smooth, and the application can slow down, and crash. Besides, due to the increased load, the battery of the user’s mobile device runs out faster.

Design

IOS and Android applications have their standards. So if you want your product to match the professional system design of both platforms, you need to develop it separately for each of them.

In addition to a beautiful UI, you need to consider that each platform has its UX. The user expects that everything will work the way he used to and how comfortable he is.

Customizing the hybrid to the required standards, you will spend as much time as it would take to draw a design from scratch for both platforms. But the output will get only one application. Also, conflicts are possible during development: components may not be displayed correctly on one of the platforms.

Chances of failure in stores

The native application initially meets the requirements of a specific platform. So there is a low probability of problems when launching in the official App Store or Google Play stores. Hybrid applications use officially unsupported technologies, such as React Native, which is still in beta testing, Ionic, etc. It increases the risk of failure.

Difficulties with payment

Internal purchases from iOS and Android go through Apple Pay or Google Pay. To do this, you don’t need to enter your card details additionally. A payment method for a hybrid app connects through plugins, frameworks, or SDKs. These cross-platform solutions are unstable because each change in native features requires the processing or refinement of their hybrid counterparts. And without a convenient payment method, the conversion will fall, because few users carry the card at hand to enter its data manually again and again.

Development prospects

If over time you want to optimize the speed of the hybrid application, you’ll need to enter pieces of code in native languages. It means that you need a developer who knows all 3 environments well. For hybrid apps, there are a lot of frameworks, and finding a programmer who knows the right ones for your application isn’t easy.

Hybrid solutions are recommended for small static apps with a limited number of users. If your application grows, there will be a need to rewrite it in the native tech stack. We had clients who came with a hybrid app and asked to make a native out of it, but we never faced the opposite situation.

Conclusion

All the difficulties that we have listed above do not matter if you need a small blog or an application for local media. But if you have high hopes for your product and see in it a tool for business accelerate, you should look at the native development.

--

--

Mentalstack
The Startup

We make Custom Web and Mobile Apps, UI/UX and Graphic Design. Website: https://mentalstack.com/