Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Codabar support for iOS #203

Open
dkibby opened this Issue Apr 8, 2016 · 1 comment

Comments

Projects
None yet
3 participants
@dkibby
Copy link

dkibby commented Apr 8, 2016

What's the possibility of this?

@otherchirps

This comment has been minimized.

Copy link

otherchirps commented Feb 20, 2017

For anyone else wrestling with this...

It turns out that:

  • Old versions of this plugin, in iOS, used an (ancient) snapshot of the ZXing c++ port. That library didn't support Codabar at the time.

  • At some point, the iOS version switched to using the iOS AV Foundation framework instead, delegating the barcode decoding to AVCaptureMetadataOutput. This framework doesn't support codabar either. This switch was necessary due to memory leaks found in the old c++ zxing approach, discovered when iOS 10 landed on everyone.

I've attempted to integrate this plugin with a more recent Objective C port of ZXing. This does support codabar, along with a few extra formats currently missing from the iOS version of this plugin.

My attempt is over here:
https://github.com/otherchirps/phonegap-plugin-barcodescanner

A more serious effort to do the same thing was already underway:
https://github.com/dually8/BarcodeScanner

I've only just got my version working, and my iOS project is now scanning codabar barcodes. I'm hoping that this approach doesn't suffer the same memory leak issues that prompted the original switch to AV Foundation. So far I haven't seen any spikes in memory usage, but it's early days yet.

Hopefully between my version and the dually8 project, a way forward on this can be found.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.