The Reality of Factory Device Fleets
Many Indian factories issue ₹8,000–15,000 Android phones or tablets to operators. These devices have 2–3GB RAM, slower CPUs, and often run Android 8.1 or 9. Your app that runs smoothly on a test iPhone 15 may lag or crash on these devices. Test on the actual target hardware, not on developer machines.
React Native Performance Quick Wins
Enable Hermes JavaScript engine (default in React Native 0.70+) — it reduces app startup time by 30–40% on low-end devices. Use FlatList instead of ScrollView for any list with more than 10 items. Avoid inline arrow functions in JSX render — they create new function references on every render. Use React.memo for components that receive the same props frequently.
Reducing Memory Usage
Factory dashboard apps often display many real-time values simultaneously. Avoid storing the full history of every variable in state — keep only the last N values needed for trend display. Use useCallback and useMemo for expensive computations. Unmount components that are off-screen rather than hiding them with CSS.
Network and Battery Optimisation
Low-end devices struggle with many concurrent network connections. Use a single WebSocket connection for all real-time data rather than separate connections per data source. Reduce polling frequency for data that does not change rapidly. Implement exponential backoff for reconnection attempts — aggressive retries drain battery and create server load.
Always test on the lowest-spec device in your target fleet, not on developer hardware. Most performance problems on factory floor devices are fixable with Hermes, FlatList, and careful state management.
Need Help With This?
Building a mobile app for factory floor devices? We optimise React Native and Flutter apps for low-end Android hardware.
Talk to Our Team →