Skip to content
geeksforgeeks
  • Courses
    • DSA to Development
    • Get IBM Certification
    • Newly Launched!
      • Master Django Framework
      • Become AWS Certified
    • For Working Professionals
      • Interview 101: DSA & System Design
      • Data Science Training Program
      • JAVA Backend Development (Live)
      • DevOps Engineering (LIVE)
      • Data Structures & Algorithms in Python
    • For Students
      • Placement Preparation Course
      • Data Science (Live)
      • Data Structure & Algorithm-Self Paced (C++/JAVA)
      • Master Competitive Programming (Live)
      • Full Stack Development with React & Node JS (Live)
    • Full Stack Development
    • Data Science Program
    • All Courses
  • Tutorials
    • Data Structures & Algorithms
    • ML & Data Science
    • Interview Corner
    • Programming Languages
    • Web Development
    • CS Subjects
    • DevOps And Linux
    • School Learning
  • Practice
    • Build your AI Agent
    • GfG 160
    • Problem of the Day
    • Practice Coding Problems
    • GfG SDE Sheet
  • Contests
    • Accenture Hackathon (Ending Soon!)
    • GfG Weekly [Rated Contest]
    • Job-A-Thon Hiring Challenge
    • All Contests and Events
  • Java for Android
  • Android Studio
  • Android Kotlin
  • Kotlin
  • Flutter
  • Dart
  • Android Project
  • Android Interview
Open In App
Next Article:
How to Build a SOS Mobile Application in Android Studio?
Next article icon

Introduction of Mobile Applications

Last Updated : 23 Jan, 2023
Comments
Improve
Suggest changes
Like Article
Like
Report

Talking about the mobile applications, the first thing that comes to mind are the apps like Whatsapp, Instagram, swiggy, etc that we use in our everyday life. Ever thought about how these apps are made? Which technology is used? Let’s discuss what technologies or frameworks can be used to develop a mobile application. Mobile apps are majorly developed for 3 Operating System. :

  1. Android  
  2. IOS
  3. Windows

There are 3 different ways to develop Mobile apps: –

  1. 1st Party Native App development
  2. Progressive web Application
  3. Cross-Platform Application
  • 1. 1st Party Native App development: –

These types of apps normally run in the native devices, that is, it runs only in the OS that it is specifically designed for it. These apps cannot be used on different devices using a different OS. The apps that are developed for android are normally coded using Java or Kotlin languages. The IDE normally used for android app development is Android Studio which provides all features and the apps that are developed for IOS are generally coded in Swift language or Objective-C. The IDE suggested for IOS App Development is XCode. 

Example,

Here’s an example of a 1st party native app:

A retail company wants to improve the in-store shopping experience for its customers. They develop a 1st party native app that allows customers to:

  • Browse the store’s inventory and product information
  • Create a shopping list
  • Scan barcodes to view product information and reviews
  • Locate items in the store using an interactive map
  • Pay for items directly through the app, without having to wait in line at the register
  • The app is only available to the company’s customers and can only be used in their physical stores. The app is designed to integrate with the company’s existing systems, such as inventory management and point-of-sale systems.

This app is developed by the retail company for their own use, to improve the in-store customer experience, increase sales and gain insights from the customer’s behavior.

In this example, the retail company is the 1st party, and the app is a native app, because it is developed for the specific platform (iOS or Android) and can take full advantage of the device’s capabilities and features.

Advantages of 1st Party Native App development:   

  1.  The performances of these apps are very high these apps very fast compared to any other apps.
  2.  We have easy access to all the features and APIs.
  3.  The community is widespread so all your doubts and errors can be discussed and solved easily.
  4.  Updates are available on the same day.

Disadvantages of 1st Party Native App development:   

  1.  The development speed is too slow as we have to code it again for different OS.
  2.  And this category doesn’t support open source.

2. Progressive web Application: –

Progressive web apps are essentially a website which runs locally on your device. The technologies used are Microsoft Blazor, React, Angular JS, Native Script, Iconic. These technologies normally used for web development propose. The apps’ UI is developed the same way as they are developed while developing the website. This category has many ups and downs let’s start with the advantages of Progressive web apps.

Example,

Here’s an example of a Progressive Web App:

A news website wants to provide its users with a better mobile experience. They develop a Progressive Web App that:

  • Allows users to access the website offline by storing content on the user’s device
  • Sends push notifications to users to alert them of breaking news
  • Can be installed on the user’s home screen like a native app
  • Provides a fast and smooth browsing experience
  • Has a responsive design that adapts to different screen sizes
  • Users can access the PWA by visiting the website on their mobile browser. They are prompted to install the PWA on their home screen, which allows them to access the website offline and receive push notifications.

In this example, the news website is the 1st party and the app is a Progressive web app, because it can be accessed through a web browser and can be installed on the user’s device like a native app. It also allows users to access the content offline and have a fast and smooth experience.

Advantages of Progressive web Application: 

  1. The main advantage of this process is that its development speed is fast the same code base is used for IOS, Android, web applications.
  2. The web development team can be repurposed to develop the mobile application.
  3. No installation required.

Disadvantages of Progressive web Application: 

  1. The major disadvantage is that PWA don’t have access to all the feature and so the user experience is not that good IOS does not support all the features of PWA  
  2. The UI for development is bespoke i.e. the buttons, edit texts need to be programmed which was not necessary for the 1st party native Apps.
  3. The community is not that wide spread.
  4. No extra room for business model i.e. it is still a challenge to develop a revenue model or advertising opportunities for PWAs. At the moment, there are fewer options than among native apps to subscribe to.

3. Cross-Platform Application: –   

These are frameworks that allow developing total native applications which have access to all the native features of IOS and Android but with the same code base. These apps run on both Android and IOS. So normally the development speeds of these apps are very fast and the maintenance cost is low. The performance speed is comparatively low to 1st party native apps but faster than PWA. 
Xamarin is Microsoft cross-platform solution that uses the programming languages like .NET, C#, F#. The IDE preferred is Visual Studio. The UI/UX is totally native giving access to all features. This technology is having a wide community. And whenever an update is released by Android and IOS the same updates are released by Microsoft through Visual Studio. 

React Native is Facebook’s cross-platform solution which uses the language JavaScript And the preferred IDE is WebStrome & Visual Studio Code. Same like Xamarin React Native has totally native UI/UX and gives access to all features. And the updates are released the same day by Facebook as Android and IOS. 
Flutter is Google’s cross-platform solution which uses the language, Dart. The IDE preferred is Android Studio, IntelliJ IDE, and Visual Studio Code. The UI/UX is bespoke and Flutters has to come up with their new libraries whenever Android and IOS comes up with an update to mimic those update. The community is fast growing.  

Example,

Here’s an example of a cross-platform application:

A project management company wants to create a project management tool that can be used by teams on different platforms. They develop a cross-platform application that:

  • Can be used on Windows, Mac, iOS, and Android devices
  • Allows users to create and assign tasks, set deadlines, and track progress
  • Integrates with popular tools such as Google Calendar and Trello
  • Has a user-friendly interface that works seamlessly across all platforms
  • The application can be downloaded from the company’s website or from different app stores such as App Store, Google Play Store, Microsoft Store, and Mac App Store, depending on the platform.

This example illustrates how the company developed a project management tool that can be used by teams on different platforms, Windows, Mac, iOS and Android, which is a cross-platform application. It allows teams to collaborate and manage their projects seamlessly, regardless of the platform they use.

Advantages of Cross-Platform Application:  

  1. The apps’ development speed is very high as they use the same code base for both Android and IOS.
  2. The apps’ maintenance cost is low as the errors and updates as to be countered only once.

Disadvantages of Cross-Platform Application: 

  1. Slow Code Performance With Limited Tool Availability.
  2. Limited User Experience i.e. these apps does not have access to Native only features.  


Next Article
How to Build a SOS Mobile Application in Android Studio?

A

atharvasonone19
Improve
Article Tags :
  • Android
  • Computer Subject

Similar Reads

  • Introduction to Pervasive Computing
    Pervasive Computing is also called as Ubiquitous computing, and it is the new trend toward embedding everyday objects with microprocessors so that they can communicate information. It refers to the presence of computers in common objects found all around us so that people are unaware of their presen
    3 min read
  • How to Spruce Up Mobile Application?
    In this modern era, the use of apps is everywhere from healthcare to agriculture, education to music, food delivery to material buying, etc. Today's world is incomplete without mobile apps. So as this technology is at the boom, so most people try to learn this technology i.e how to create apps, and
    5 min read
  • How to Build a SOS Mobile Application in Android Studio?
    The SOS applications are basically advanced emergency apps that can rescue you and/or your loved ones if you and/or they find themselves in a life-threatening emergency situation and need immediate assistance. When you need some personal assistance, you can actually turn on your phone and can call o
    15+ min read
  • Components of an Android Application
    There are some necessary building blocks that an Android application consists of. These loosely coupled components are bound by the application manifest file which contains the description of each component and how they interact. The manifest file also contains the app’s metadata, its hardware confi
    3 min read
  • Introduction to Android Development
    Android operating system is the largest installed base among various mobile platforms across the globe. Hundreds of millions of mobile devices are powered by Android in more than 190 countries of the world. It conquered around 71% of the global market share by the end of 2021, and this trend is grow
    5 min read
  • Advantages of Mobile Application over Websites
    Despite different functionalities and services, they have their specific usability and preference of use. The list will be long when we will start thinking about that when a mobile app makes sense? Let's get started with the introduction, pros, and cons of Mobile Application and Website. Mobile Appl
    5 min read
  • How Ionic Reduces Your Mobile App Development Cost?
    The Ionic for Everyone is specifically designed to ensure its optimal functionality with different web developers from around the globe. Development requires the saving of both money and time. The Ionic project framework can prove to be a cost-effective solution to your development problem. The Ioni
    6 min read
  • Android Applications and Their Categories
    Android is an open-source operating system, based on the Linux kernel and used in mobile devices like smartphones, tablets, etc. Further, it was developed for smartwatches and Android TV. Each of them has a specialized interface. Android has been one of the best-selling OS for smartphones. Android O
    5 min read
  • Top 7 Databases for Mobile App Development in 2025
    In the ever-evolving mobile app development landscape, selecting the correct database is crucial for building efficient and robust applications. Based on the requirements of the project, the database can be local or remote. With the generation of smartphones and the increasing demand for feature-ric
    10 min read
  • 10 Must-Have Features for Mobile App in 2024
    In the today's world of mobile phones including Android and iPhone, millions of mobile applications exist that users use in their day-to-day lives. The success of mobile applications can be defined if the application has a growing audience, a good user retention ratio, a great feedback feature, and
    9 min read
geeksforgeeks-footer-logo
Corporate & Communications Address:
A-143, 7th Floor, Sovereign Corporate Tower, Sector- 136, Noida, Uttar Pradesh (201305)
Registered Address:
K 061, Tower K, Gulshan Vivante Apartment, Sector 137, Noida, Gautam Buddh Nagar, Uttar Pradesh, 201305
GFG App on Play Store GFG App on App Store
Advertise with us
  • Company
  • About Us
  • Legal
  • Privacy Policy
  • In Media
  • Contact Us
  • Advertise with us
  • GFG Corporate Solution
  • Placement Training Program
  • Languages
  • Python
  • Java
  • C++
  • PHP
  • GoLang
  • SQL
  • R Language
  • Android Tutorial
  • Tutorials Archive
  • DSA
  • Data Structures
  • Algorithms
  • DSA for Beginners
  • Basic DSA Problems
  • DSA Roadmap
  • Top 100 DSA Interview Problems
  • DSA Roadmap by Sandeep Jain
  • All Cheat Sheets
  • Data Science & ML
  • Data Science With Python
  • Data Science For Beginner
  • Machine Learning
  • ML Maths
  • Data Visualisation
  • Pandas
  • NumPy
  • NLP
  • Deep Learning
  • Web Technologies
  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • ReactJS
  • NextJS
  • Bootstrap
  • Web Design
  • Python Tutorial
  • Python Programming Examples
  • Python Projects
  • Python Tkinter
  • Python Web Scraping
  • OpenCV Tutorial
  • Python Interview Question
  • Django
  • Computer Science
  • Operating Systems
  • Computer Network
  • Database Management System
  • Software Engineering
  • Digital Logic Design
  • Engineering Maths
  • Software Development
  • Software Testing
  • DevOps
  • Git
  • Linux
  • AWS
  • Docker
  • Kubernetes
  • Azure
  • GCP
  • DevOps Roadmap
  • System Design
  • High Level Design
  • Low Level Design
  • UML Diagrams
  • Interview Guide
  • Design Patterns
  • OOAD
  • System Design Bootcamp
  • Interview Questions
  • Inteview Preparation
  • Competitive Programming
  • Top DS or Algo for CP
  • Company-Wise Recruitment Process
  • Company-Wise Preparation
  • Aptitude Preparation
  • Puzzles
  • School Subjects
  • Mathematics
  • Physics
  • Chemistry
  • Biology
  • Social Science
  • English Grammar
  • Commerce
  • World GK
  • GeeksforGeeks Videos
  • DSA
  • Python
  • Java
  • C++
  • Web Development
  • Data Science
  • CS Subjects
@GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Lightbox
Improvement
Suggest Changes
Help us improve. Share your suggestions to enhance the article. Contribute your expertise and make a difference in the GeeksforGeeks portal.
geeksforgeeks-suggest-icon
Create Improvement
Enhance the article with your expertise. Contribute to the GeeksforGeeks community and help create better learning resources for all.
geeksforgeeks-improvement-icon
Suggest Changes
min 4 words, max Words Limit:1000

Thank You!

Your suggestions are valuable to us.

What kind of Experience do you want to share?

Interview Experiences
Admission Experiences
Career Journeys
Work Experiences
Campus Experiences
Competitive Exam Experiences