ZXing, как сканировать QR-код и 1D штрих-код? - PullRequest
16 голосов
/ 29 августа 2011

Я только что импортировал библиотеку ZXing в свое приложение, я знаю, как настроить функцию putExtra для сканирования штрих-кода QR-кода :

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

и если мне нравится сканировать 1D штрих-код :

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

но как мне сделать приложение способным сканировать оба? (1D и 2D штрих-код).

Спасибо! Marco

Ответы [ 4 ]

28 голосов
/ 29 августа 2011

Если вы просто хотите сканировать оба (и не только эти два):

Не добавляйте SCAN_MODE дополнительно к цели. Это необязательно, чтобы ограничить тип штрих-кода определенным типом. Не указав, он будет сканировать все возможные типы.

7 голосов
/ 03 января 2013

Просто пройдите эти строки кода.Он работает для меня отлично, как вы хотите.

 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);
2 голосов
/ 15 октября 2013

Вы должны использовать «SCAN_MODE» вместо «QR_CODE_MODE»:

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

должно быть

INTENT.putExtra("SCAN_MODE", "SCAN_MODE");
2 голосов
/ 01 сентября 2011

Я рекомендую использовать IntentIntegrator . Это класс проекта Zxing, который я использую с одним из моих приложений.Я предоставил ссылку на файл.Он инкапсулирует код сканирования и отлично подходит для простой функции сканирования.Метод initiateScan - это то, где вы хотите посмотреть.Наслаждайтесь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...