Skip to content
Webb Technologies

Mobile · Plant floor

Mobile apps for plant-floor and field teams: offline work, shared devices and MDM

A mobile app for operators, maintenance technicians or field crews works in conditions a consumer app never sees: Wi-Fi that drops behind racking and steel, devices passed between people at shift change, gloves, noise, barcode scanners, and phones managed by IT rather than their users. This guide covers the design decisions that make these apps dependable: which kind of app to build, how to handle offline work and sync, how people sign in on shared devices, and how the devices and the app are managed.

Webb TechnologiesUpdated 9 min read

Drafted with AI assistance; facts checked against any sources cited. General guidance, not advice for your situation; verify before relying on it.

On this page

In short

  • Choose browser, native or cross-platform by what the job needs offline and from the hardware, not by preference.
  • Design offline-first where connectivity is patchy: a local store, an outbox of changes, idempotent sync and written conflict rules.
  • On shared devices, give the device a limited identity and attribute every record to the person using it.
  • Plan device management, private distribution and forced updates with IT before the first build, not at rollout.

What's different about apps for operations teams

  • Connectivity is uneven. Metal buildings, freezers, basements, tanks and remote sites all create dead zones. The app has to keep working through them.
  • Devices are shared. A tablet on a line or a handheld in a charging rack may be used by several people in a day.
  • The hardware matters. Rugged Android handhelds with built-in scanners, tablets in cases, and phones used with gloves or in bright light.
  • IT manages the device. Apps are installed, configured and updated through mobile device management, not the public app stores.
  • The data feeds other systems. Inspections, readings, work orders and counts end up in databases, the MES or reports, and have to be trustworthy when they arrive.

If the app shows live machine data, our guide to getting plant data across the OT/IT boundary covers reading it without touching the control network; control actions stay in the control system. For office, sales and service staff, often on their own phones, see a mobile app for your staff.

Browser, native or cross-platform

Options for building a mobile app for plant-floor and field teams

Web app in the browser (optionally a progressive web app)

Strengths
Runs on any device, updates instantly, one codebase with your desktop screens
Watch for
Offline storage, background sync and hardware access vary by browser and are most limited on iOS

Native iOS (Swift, SwiftUI)

Strengths
Best performance and integration on iPhone and iPad: camera, notifications, background work, secure storage
Watch for
iOS only; a separate build if you also run Android devices

Cross-platform (React Native)

Strengths
One codebase for iOS and Android with native device access
Watch for
Some device features, such as vendor scanner SDKs, need native modules

Low-code platform

Strengths
Fast for simple forms if you already license it
Watch for
Offline behavior, scanner support and complex logic are limited to what the platform provides

A browser app is often right for screens used on fixed, well-connected devices. A native or React Native app usually earns its place when people must keep working offline, when the app relies on scanners or the camera, or when it needs push notifications and background sync. Many rugged handhelds run Android, and their scanners are commonly reached either as keyboard input or through the manufacturer's SDK or intent-based services, so confirm the device model early.

Designing for offline work

Offline-first means the app reads from and writes to a store on the device, and synchronizes with the server whenever it can. The person using it never waits for the network to save their work.

field-app / offline-first syncdiagram
The mobile app writes records to a local database and places each change in an outbox. When a connection is available, the sync service sends outbox items to an API that applies them idempotently and resolves conflicts by written rules, then returns updated reference data. The API writes to the app's database, which feeds the MES, reports and other plant systems.

Devices talk only to the API. They never connect directly to PLCs, historians or production databases.

  • Client-generated IDs. Each record gets a unique ID on the device, so a change sent twice after a dropped connection is applied once.
  • An outbox, in order. Pending changes are queued and sent in order, retried with back-off, and kept until the server confirms them.
  • Visible sync status. People can see what's waiting to send and when the device last synchronized. Silent failures are how data goes missing.
  • Reference data downloaded ahead. Lists of assets, lines, parts and checklists are cached with a version, so forms work offline and the server knows which version was used.
  • Server-side validation too. The device checks entries as they're made, and the server checks them again, because the rules may have changed while the device was offline.
  • Two time stamps. Record when the event happened on the device and when the server received it. Device clocks drift, so treat the device time as reported, not authoritative.
  • Decide what must be online. Some actions, such as approvals or anything that depends on another person's latest change, may be better blocked offline with a clear message.

Conflict rules for each kind of record

When two people change the same thing while one of them is offline, the app needs a rule. Write the rules down per record type with the people who own the process, rather than letting the last sync win by accident.

Common conflict strategies for offline mobile apps

New entries: inspections, readings, counts, photos

Typical strategy
Append-only. Each is a new record, so there's nothing to conflict with

Reference data: assets, checklists, part lists

Typical strategy
Read-only on the device; the server's latest version replaces the cached copy

Shared records: work orders, tasks

Typical strategy
Field-level merge where fields don't overlap; otherwise reject the later change and ask the person to review

Status changes: close, approve, assign

Typical strategy
Check the record's version on the server; refuse if it changed since the device last saw it

Corrections to submitted data

Typical strategy
A new correction record with a reason, never an overwrite of the original

Shared devices and sign-in

A device signed in with one person's account all shift makes every record anonymous. The common pattern is a limited identity for the device or station, with each person identifying themselves for their session, by badge scan or short PIN, backed by your company identity provider. Our guide to SSO and least privilege for internal apps covers the station-identity design.

  • Platform shared-device features. Microsoft Entra ID offers a shared device mode for iOS and Android apps built to support it (on iOS it also needs the Microsoft Enterprise SSO plug-in deployed through your MDM), and Apple supports Shared iPad for organizations using Apple Business Manager. Check which fits your devices and identity provider before designing sign-in.
  • Local data follows the person. Cached records and the outbox are tied to the user who created them, and anything sensitive is cleared or locked when they sign out.
  • Unsent work survives a handover. If someone signs out with changes still in the outbox, they should still sync under that person's name, not be lost or reassigned.
  • Short sessions. Sign out after inactivity, and let the next person switch in quickly.

Device management and distribution

Company-owned devices are usually managed with a mobile device management (MDM) tool such as Microsoft Intune, Jamf or similar. Plan the app's distribution and configuration with whoever runs it.

Distribution and management options for internal mobile apps

Private distribution

iOS and iPadOS
Custom apps through Apple Business Manager, installed by your MDM
Android
Private apps through managed Google Play, installed by your MDM

Per-site configuration

iOS and iPadOS
Managed app configuration pushed by the MDM (for example, the server address for each plant)
Android
Managed configurations through the same MDM

Single-purpose devices

iOS and iPadOS
Single App Mode or Guided Access
Android
Lock task (kiosk) mode through the MDM or a dedicated-device setup

Protecting company data

iOS and iPadOS
App protection and managed-app policies from the MDM
Android
Work profile or fully managed device policies
  • Avoid public store listings for internal apps. Private distribution keeps the app off the public stores. Apple's Developer Enterprise Program is only for cases the standard program can't cover, and requires 100 or more employees and Apple's verification, so Apple Business Manager is the usual route for companies that can use it.
  • A minimum supported version. The server can tell an outdated app to update before it syncs, so old versions with old rules don't keep sending data.
  • Staged rollouts. Update one line, one crew or one site first, then everyone.
  • Crash and sync reporting. Collect crash reports and sync errors centrally, so problems are found before someone reports missing data.

Designing for gloves, glare and scanners

Practical design checks for the plant floor and the field

  • Large touch targets and spacing that work with gloves.
  • High contrast that stays readable in bright light and under plant lighting.
  • Scanning a barcode or QR code instead of typing wherever an ID exists.
  • Numeric keypads for numbers, with limits checked at entry.
  • Photos captured with the record, compressed, and queued like any other change.
  • Forms that save progress as they go, so an interruption doesn't lose work.
  • Battery, charging racks and cases chosen for a full shift.
  • Wi-Fi coverage and roaming checked where the app will actually be used.

Many of these apps replace paper forms and clipboards.

Planning an app for your operators or crews?

Tell us who will use it, on which devices, and where connectivity is patchy. On a scoping call we'll talk through the app type, the offline design and device management, and what a fixed-price build would cover.

Request a scoping call

Not ready to talk yet? Draft a project brief first 

Testing and rollout

  • Test where it's used. Walk the app through the dead zones, the freezer, the far end of the yard. Airplane mode on a desk is a start, not a test.
  • Test long offline periods. A device offline for a full shift, or a weekend, then brought back with a large outbox.
  • Test the awkward cases. Two people editing the same work order, a device with the wrong clock, an app update while changes are still waiting to send.
  • Pilot with one team. One line or one crew first, with a quick way to report problems, before rolling out wider.
  • Write acceptance criteria for offline behavior. For example: "A record created offline appears on the server within 2 minutes of the device reconnecting, exactly once."

Questions to settle before you build

Take this to operations, IT and security

  • Who uses the app, on which devices, and are devices personal or shared?
  • Where is connectivity poor, and what must keep working offline?
  • Which records are new entries, and which are shared records that can conflict?
  • Which scanners, cameras or other hardware does the app need to use?
  • Which MDM manages the devices, and how will the app be distributed and configured per site?
  • How do people sign in on shared devices, and which identity provider backs it?
  • Which systems receive the data, and which one is the record for it?

Our experience includes native iOS apps in Swift, SwiftUI and UIKit, cross-platform apps in React Native, push notification systems, and web and mobile HMIs and dashboards for production data. See mobile app development for what we build, and the manufacturing page for what we build for plants.

Sources

Want to talk through your version of this?

A 30-minute call. You leave with a clear approach and the real risks, whether or not you hire us.