I'm not sure it's possible to achieve that in all circumstances, but if you have control over all the applications you need to monitor, there might be a (maybe unconventional) way to do it.
If your apps are using a DataWedge profile, you can enable intent output or IP output and have DataWedge forward each scanned barcode either as a broadcast intent (which you can listen to from your background app) or through TCP/UDP either on IPWedge, a custom app on a server or even potentially on the same mobile device, if you set the IP address to 127.0.0.1.
Will that help in your case?
Technical Architect, Kutir Mobility
Posted on behalf of Zebra Technologies