Does my app need to work offline?
It depends on where the app will be used. If users work in warehouses, basements, vehicles, hospitals, construction sites, aircraft, rural areas or on unreliable networks, offline support is needed and should be designed in from the start. If users work at desks with reliable connections, offline support adds significant cost for little benefit.
Reading data offline is relatively straightforward. Editing data offline is more complex, as two people may change the same record independently and the system must resolve the conflict when both reconnect.
Each conflict-resolution strategy has trade-offs. Last-write-wins is simple but can lose changes; field-level merging preserves more data but needs care to keep records consistent; manual resolution is transparent but requires user input; and conflict-free replicated data types resolve automatically but constrain the data model. The right choice depends on your business requirements.
A practical approach for many products is full offline reading, queued offline writes for the operations performed in the field, and a connection required for everything else.
Where offline support is required, the app should always read from local storage, even when online, so it behaves consistently.
Related service
Mobile App DevelopmentiOS and Android apps from one codebase, with offline support and app store submission.
Was this helpful?