Library Choice: Vision Camera vs Expo BarCodeScanner
For factory apps requiring high performance, use react-native-vision-camera with the vision-camera-code-scanner plugin. It processes frames at 30 FPS and handles damaged, poorly printed, and low-contrast barcodes better than lighter alternatives. Expo BarCodeScanner is fine for consumer apps but struggles with industrial labels under factory lighting conditions.
Handling Industrial Barcode Formats
Factory environments use: Code 128 (most common in logistics), QR Code (traceability labels), Data Matrix (pharma and electronics — extremely high information density in small space), PDF417 (driver licences, large data payloads). Configure your scanner to only recognise formats you actually use — scanning for all formats simultaneously reduces performance.
Scan Confirmation UX
Operators working with gloves and under time pressure need clear scan confirmation: audio beep on success, screen flash or large green checkmark, haptic vibration (useful when audio is drowned by machine noise). Show the scanned value prominently for 1.5 seconds before automatically advancing to the next step.
Dealing with Bluetooth Scanners
Many factory operators prefer dedicated Bluetooth barcode scanners (Zebra, Honeywell) over using a phone camera — faster, more accurate, works with one hand. Implement keyboard listener mode in your React Native app — Bluetooth scanners emulate a keyboard, sending scan data as keystrokes followed by Enter. Listen for rapid keystrokes ending in Enter to distinguish scanner input from manual typing.
For factory apps, invest in vision-camera rather than lighter scanner libraries. The performance difference is significant under challenging factory lighting and with worn or small barcodes.
Need Help With This?
Building a factory mobile app with barcode scanning? We specialise in high-performance scanning apps for industrial environments.
Talk to Our Team →