Framework Choice for Different Apps in Android

Amit Gupta
3 min readAug 16, 2023

In this article , I am focusing on some factors how we can choose the tech framework for Android apps which is always a great confusion between teams to minimise the development cost.

Here’s a table listing factors to consider when choosing a Mobile Tech Stack for mobile development:

Factors for comparison of choosing tech framework

Here’s a table comparing some of the popular cross-platform technologies for mobile development:

Comparison b/w famous cross platform tech

Here’s a table comparing web view-based development and native mobile development:

WebView Vs Native

Performance Bottleneck for WebView:

Here’s a table comparing React Native and Native mobile development:

RN has major bottleneck in terms of performance:

  1. Size of app will be increased too much because of RN framework and Bundle size.
  2. We have to initialise the RN Engine which costs the app launch performance.
  3. Maintenance cost is high for React Native while Android and IOS OS upgrade released.
  4. RN libs gets obsolete due to restriction imposed in latest native OS upgrade because of which we need to use native bridges in RN code, otherwise writing code for all supporting OS for Android and IOS will become lot of overhead for RN libs.(e.g fetching metadata for Location while accessing photo media file require extra permission after Android 12 version)

KMM — Kotlin Multi Platform Mobile (Shared Code Logic between Android and IOS)

KMM vs C++ vs Android Native

So based on above factors and comparison , we can choose how much performance and how much resources we need to invest on our project , for some products performance is main concern , they can go for Android Native , for other products one code base matter more by compromising some performance then they can go with React Native and if for some products most of the users are on web , they can create their app in webview, So know your audience and use cases and act accordingly.

Thanks a lot for reading the content.