我已经按照谷歌代码实验室中的说明让Baracode API来检测和解码标准的QR码。我已经完成了一个简单的集成,让相机提供图像并且它可以工作。然后我尝试使用PDF417条形码,但什么都没有。
Bitmap myBitmap = BitmapFactory.decodeResource(
getApplicationContext().getResources(),
R.drawable.barcode);
BarcodeDetector detector =
new BarcodeDetector.Builder(getApplicationContext())
.setBarcodeFormats(Barcode.PDF417)
.build();
Frame frame = new Frame.Builder().setBitmap(myBitmap).build();
SparseArray<Barcode> barcodes = detector.detect(frame);
Barcode thisCode = barcodes.valueAt(0);
条形码是一个长度为零的对象,此代码尝试获取位置 0 处的值失败。我尝试输入我拍摄的PDF417条形码以及来自在线生成器的条形码。
有人可以帮助我吗?
提前感谢!!
快速回答您的问题,您需要将条形码标志更改为ALL_FORMATS(Barcode.ALL_FORMATS(,或者您应该只提供条形码。换句话说,条形码旁边不应该有其他视觉信息(裁剪它(。否则,API 找不到 PDF-417 条形码。