ZXing如何扫描QR码和一维条码?

问题描述:

我刚刚导入的斑马线库在我的应用程序,我知道如何建立putExtra功能扫描QR码条码ZXing如何扫描QR码和一维条码?

INTENT = new Intent("com.google.zxing.client.android.SCAN"); 
INTENT.putExtra("SCAN_MODE", "QR_CODE_MODE"); 
startActivityForResult(INTENT, 0); 

,如果我想扫描一维条码

INTENT = new Intent("com.google.zxing.client.android.SCAN"); 
INTENT.putExtra("SCAN_MODE", "PRODUCT_MODE"); 
startActivityForResult(INTENT, 0); 

但我如何使应用程序能够扫描两者? (一维和二维条码)。

谢谢! 马尔科

如果你只是想同时扫描(而不是仅仅这两个):

不要SCAN_MODE额外添加到意图。这是可选的,以将条形码的类型限制为某种类型。不指定它会扫描所有可能的类型。

+0

谢谢,我不知道我能做到这一点:)完美的作品! –

我推荐使用IntentIntegrator它是Zxing项目中的一个类,我正在使用其中一个应用程序。我提供了一个指向文件的链接。它封装了扫描代码,非常适合简单的扫描功能。 initiateScan方法是您想要查看的位置。请享用!

只要通过这些代码行。它正在为我完美地工作,只要你想。

Intent intent = new Intent("com.google.zxing.client.android.SCAN"); 
       intent.setPackage("com.google.zxing.client.android"); 
       //intent.putExtra("SCAN_MODE", "PRODUCT_MODE"); 
       intent.putExtra("SCAN_FORMATS", "CODE_39,CODE_93,CODE_128,DATA_MATRIX,ITF,CODABAR,EAN_13,EAN_8,UPC_A,QR_CODE"); 
       startActivityForResult(intent, 0); 

你应该使用,而不是 “QR_CODE_MODE” “SCAN_MODE”:

INTENT.putExtra("SCAN_MODE", "QR_CODE_MODE"); 

应该

INTENT.putExtra("SCAN_MODE", "SCAN_MODE");