Mobile app

Also known as: mobile application

On this page 7

A mobile app (short for mobile application) is a software program designed to run on a mobile operating system such as Android or iOS, installed on a smartphone, tablet or wearable and built around touch input, small screens, intermittent connectivity and limited battery. Among the mobile fundamentals, it is the basic unit through which users get functionality on a mobile device, from messaging and banking to games and navigation.

Unlike a desktop program, a mobile app runs inside a sandbox controlled by the operating system, which decides when it may run, what data it may touch and how much memory and energy it may use. These constraints shape how mobile apps are designed, built, distributed and updated.

How a mobile app runs on the device

A mobile app runs as an isolated process that the operating system starts, pauses and terminates according to the app lifecycle. When the user opens the app, it moves to the foreground and receives input; when the user switches away, it moves to the background, where the system restricts or suspends its execution to save battery and memory.

Each app is packaged as a signed bundle, an APK or AAB on Android and an IPA on iOS, which contains compiled code, resources such as images and layouts, and a manifest that declares its identity, capabilities and requested permissions. The code signature lets the system verify that updates come from the same developer.

Access to sensitive resources, such as the camera, location, contacts or microphone, is controlled by app permissions. Modern systems ask the user at the moment of first use and allow permissions to be revoked later, so a well-built app must keep working gracefully when access is denied.

ComponentRoleExample
User interface layerScreens, navigation and touch handlingLists, forms, bottom navigation
Application logicBusiness rules and state managementCart totals, validation
Local storageOffline data and cachesSQLite database, key-value store
NetworkingCommunication with servers and APIsHTTPS requests, sync
Platform integrationsAccess to device featuresCamera, push notifications, sensors
Manifest and signatureIdentity, permissions, integrityPackage name, signing certificate
Main building blocks of a mobile app

Types of mobile apps

Mobile apps are commonly classified by how they are built, because the technology choice determines performance, access to device features and development cost. The boundaries are not sharp, and many production apps mix approaches.

TypeHow it is builtMain trade-off
Native appPlatform languages and SDKs such as Kotlin or SwiftBest performance and integration, two codebases
Cross-platform appShared code with frameworks such as Flutter or React NativeOne codebase, some platform gaps
Hybrid appWeb code inside a native container with a WebViewFast development, weaker feel and speed
Progressive web appWeb app installable from the browserNo store needed, limited device access
Native, cross-platform, hybrid and web apps

A second, independent classification is by purpose: utility, productivity, communication, commerce, media, games or enterprise apps. Purpose often matters more than technology for decisions about offline support, security and update frequency.

How mobile apps differ from websites and desktop software

A mobile app differs from a website and a desktop program mainly in installation, system control and device access. These differences explain why companies often offer both an app and a mobile website.

AspectMobile appMobile websiteDesktop program
InstallationFrom an app store, sometimes sideloadedNone, opened by URLInstaller or store
Background executionTightly limited by the OSMinimalLargely unrestricted
Device accessBroad, permission-gatedLimited by browser APIsBroad
UpdatesStore review and user updateInstant on the serverInstaller or auto-update
Offline useCommonPossible with service workersCommon
DiscoveryStore search and linksSearch engines and linksDownloads and stores
Mobile app compared with neighboring software forms

The app model trades reach for depth. A website is one tap away for anyone, while an app demands an install but offers push notifications, home screen presence and tighter integration with the hardware.

Building and distributing a mobile app

Most mobile apps are distributed through official app stores, Google Play and the App Store, which review submissions against their policies, host the binary, process payments and deliver updates. Some regions now allow alternative app marketplaces, and Android has long permitted installing apps from other sources.

  • Development uses the platform SDK and an IDE, with emulators and real devices for testing.
  • Beta testing runs through channels such as TestFlight or Play testing tracks.
  • App review checks content, privacy disclosures and technical behavior before release.
  • Staged rollout releases a new version to a growing percentage of users to limit the impact of defects.
  • Monitoring tracks crashes, freezes, startup time and battery use in production.

Because users decide when to update, several app versions run in parallel. Server APIs must remain backward compatible for months, and critical fixes may need a forced update mechanism inside the app.

Common pitfalls in mobile app design

Many mobile apps fail not because of missing features but because they ignore mobile constraints. Slow startup, heavy battery drain and requests for unnecessary permissions are among the most common reasons for poor ratings and uninstalls.

Other recurring problems include assuming a stable network connection, ignoring different screen sizes and foldable layouts, blocking the main thread with heavy work, which causes jank and freezes, and collecting more personal data than the function requires. A disciplined team treats performance, privacy and accessibility as release criteria, not as later improvements.

A non-technical view

A mobile app is a program made for a phone or tablet. You download it from a store. It gets its own icon on the home screen. It is designed for your fingers and a small screen.

Picture the phone as a well-run building and each app as a tenant with its own room. The building manager, the operating system, controls shared resources such as the camera or your location. It also puts idle tenants to sleep. That way the battery lasts longer.

A concrete example

A regional public transport company wants passengers to buy tickets on their phones. A mobile website already exists, but riders complain that it is slow underground and that they must log in every time.

The company builds a cross-platform mobile app with one shared codebase for Android and iOS. Tickets are stored locally on the device, so they can be shown to an inspector without signal, and a push notification warns riders about disruptions on their saved routes. The app asks for location access only when the user taps “nearest stop”. After a staged rollout over two weeks, ticket sales on phones grow steadily, and support requests about lost tickets underground almost disappear.