cordova

11 thoughts
last posted Feb. 20, 2017, 12:04 a.m.

1 earlier thought

0

It seems this is a legacy inherited from ancient phonegap plugins, and hasn't been updated since. Likely since the C++ port has been deprecated and removed from the official ZXing project, it might've simply become a "too hard for the moment" problem.

Looks like most barcode scanning plugins for cordova are forks of this, so they all carry the same issue.

The plugin doesn't use a recent version of the library, for iOS. It uses an "all in one" version of the ZXing source code (see "zxing-all-in-one.h & zxing-all-in-one.cpp", to make building less complicated. Unfortunately it makes updating to a new version a bit more complicated.

The plugin project itself is a fork of an earlier plugin project. Somewhere in the process of forking, the scripts / docs on how the authors generated the "all in one" zxing files was removed...

The ancient, deprecated plugin project which created these all-in-one files is here: https://github.com/phonegap/phonegap-plugins/tree/DEPRECATED/iOS/BarcodeScanner

It includes a makefile and a custom python script to create the all in one files, in the build directory.

9 later thoughts