我正在尝试为iOS的JQM phonegap项目添加barcode scanner。我已按照列出的说明进行操作,但我不能100%确定是否正确执行了第一步和最后一步。
将.h,.cpp和.mm文件复制到您的插件目录中 项目。您可能需要为其设置编译选项 zxing-all-in-one.cc关闭优化。
我直接将三个文件复制到xcode中的plugins文件夹中。它没有给我任何错误,但它也没有用。我不知道如何在xcode中做编译器选项,所以我还没有完成最后一步。
目前我的应用程序仍然运行且没有错误,并且运行扫描功能打开带有条形码扫描仪的ui的相机。问题是它似乎没有寻找或找到条形码,它只是保持不动并且什么都不做(直到你点击取消,然后它正确显示被取消的消息)。
任何人都有任何想法有什么不对或我应该在哪里看?
答案 0 :(得分:4)
如果打开相机并在屏幕上显示扫描用户界面,则表示您已完成所有操作。问题似乎是扫描仪没有检测到条形码。
请注意,使用zxing识别1D条形码(“经典”条形码)需要iPhone配备自动对焦镜头(iPhone 4或iPhone 4S)。使用手机镜头检测1D条码有点棘手,需要适当的光线和对焦;这就是为什么二维码像二维码发明的原因之一。
尝试使用http://zxing.appspot.com/generator/生成QR码,将其显示在屏幕上并尝试使用您的应用进行扫描。如果它工作然后好消息,一切都很好,但坏消息,你的手机不适合一维条码扫描。
答案 1 :(得分:1)
此行为的另一种解释是编译器标志。如BarcodeScanner wiki所述,可能需要为zxing-all-in-one.cc设置编译选项以关闭优化。
在XCode4中,单击您的项目,然后在目标下选择目标,转到构建阶段 - >编译源,选择 zxing-all- in-one.cc 并在编译器标志列中输入 -O0 (这是破坏)。
这解决了我。