我正在开发与条形码扫描相关的应用程序。当我要扫描条形码时,一些条形码会得到结果,而某些条形码无法扫描。
我的代码如下
cam_scan_btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent("com.google.zxing.client.android.SCAN");
intent.putExtra("SCAN_FORMATS", "CODE_39,CODE_93,CODE_128,DATA_MATRIX,ITF,CODABAR,EAN_13,EAN_8,UPC_A,UPC_E,ITF,RSS_14");
intent.putExtra("SAVE_HISTORY", false);
startActivityForResult(intent, 0);
}
});
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 0) {
if (resultCode == RESULT_OK) {
String contents = data.getStringExtra("SCAN_RESULT");
String format = data.getStringExtra("SCAN_RESULT_FORMAT");
System.out.println(contents + "/n" + format);
BarcodeId.setText(contents);
ScannedBarcode();
Intent intent = new Intent("com.google.zxing.client.android.SCAN");
intent.putExtra("SCAN_FORMATS", "CODE_39,CODE_93,CODE_128,DATA_MATRIX,ITF,CODABAR,EAN_13,EAN_8,UPC_A,QR_CODE,ITF,RSS14");
startActivityForResult(intent, 0);
// Handle successful scan
} else if (resultCode == RESULT_CANCELED) {
// Handle cancel
}
}
}
从上面的代码中,我无法扫描所有条形码,我添加了用户权限,包括zxing lib android库。
在onActivityResult功能中,我再次打开相机扫描,逐个扫描多个条形码。
通过参考教程,我知道zxing libs主要支持扫描QR码而不是条形码。是对的吗 ?
请您查看我的问题并帮助我。提前谢谢。
答案 0 :(得分:0)
您是否尝试使用BarcodeScanner应用程序扫描条形码?如果这样做有效,那么您构建的用于启动扫描仪应用程序的Intent有问题。
另外我建议将请求代码从0更改为某个随机正数。也许这就是为什么你没有得到任何结果。