Article Barcode Scanner Not Working on Android Devices

Summary: Built-in barcode scanning fails on Android due to camera permission handling changes in Android 14.

Hey folks — ran into this one last week and figured I'd share what we found. If you're using Android devices for inventory scanning and the barcode reader suddenly stopped working, it's probably not your hardware.

Symptoms

  • Tap the barcode icon in the inventory screen, nothing happens
  • Or: camera view opens but won't actually scan — just sits there
  • Works fine on iOS, or worked fine on the same Android device before recent update

What we confirmed

Android 14 changed how camera permissions work for WebView and hybrid apps. FieldPulse's scanner uses the device's camera feed, and if the permission prompt got dismissed or set to "Ask every time," the app doesn't handle the retry gracefully. It just... doesn't scan.

The fix that worked for us

Pro tip: Don't just check if Camera is allowed — check if it's set to "Allow all the time" or at least "Allow only while using the app." The "Ask every time" setting breaks the continuous scanning mode.

  1. Long-press the FieldPulse app icon → App info
  2. Tap PermissionsCamera
  3. Change from "Ask every time" to Allow only while using the app
  4. Force-close FieldPulse and reopen

If that doesn't do it, also check Nearby devices permission — some Android builds bunded Bluetooth scanner support with that permission group, and blocking it can confuse the app about which scanner to use.

What we tried that didn't help

Clearing cache, reinstalling, rebooting the phone — none of that matters if the permission model itself is the problem. Save yourself the time.

We're seeing this on Samsung Galaxy XCover 6 and some Zebra devices running Android 14. Haven't hit it on Android 13 or lower yet, but your mileage may vary depending on when your manufacturer pushed the permission changes.

If you're using a dedicated Bluetooth scanner instead of the camera, that's a different flow entirely — this guide is specifically for the built-in camera scanner.

  • @rachel.nguyen good question — "while using" has been fine for us. The scanner only runs when the app is foreground anyway, so background permission shouldn't matter for this specific issue.

    Pro tip: If you need the app to sync inventory updates in background (like when parts get restocked overnight), that's a separate permission under Background data — but not related to the camera scanner problem.

  • I have confirmed that this occurs on Android 14 (API level 34) with FieldPulse app version 3.2.1. The permission behavior change is documented in the Android 14 release notes under Health Connect permission model, though FieldPulse is not a Health Connect app — the permission enforcement appears to have broader impact.

    I can reproduce this when the permission is set to "Ask every time" but not when set to "Allow only while using the app."

    Has anyone tested whether "Allow all the time" is required for background sync scenarios, or is "while using" sufficient for all inventory workflows?

  • Can confirm this fixed it on our Samsung tablets — was driving the warehouse team nuts. thx for posting