Как создать сканер штрих-кода (Android)?

Может ли кто-нибудь сказать мне, нужно ли создавать приложение сканера штрих-кода (для Android)? Хорошо ли работает OpenCV-библиотека? Где можно найти алгоритм, который четко объясняет, как читать штрих-коды? Я буду благодарен всем хорошим материалам по этой теме!

Заранее спасибо!

Solutions Collecting From Web of "Как создать сканер штрих-кода (Android)?"

Проект ZXing предоставляет автономное приложение для чтения штрих-кодов, которое – через механизм намерения Android – может вызываться другими приложениями, которые хотят интегрировать сканирование штрих-кода.

Самый простой способ сделать это – вызвать ZXing SCAN Intent из вашего приложения, например:

public Button.OnClickListener mScan = new Button.OnClickListener() { public void onClick(View v) { Intent intent = new Intent("com.google.zxing.client.android.SCAN"); intent.putExtra("SCAN_MODE", "QR_CODE_MODE"); startActivityForResult(intent, 0); } }; public void onActivityResult(int requestCode, int resultCode, Intent intent) { if (requestCode == 0) { if (resultCode == RESULT_OK) { String contents = intent.getStringExtra("SCAN_RESULT"); String format = intent.getStringExtra("SCAN_RESULT_FORMAT"); // Handle successful scan } else if (resultCode == RESULT_CANCELED) { // Handle cancel } } } 

Нажатие кнопки, связанной с mScan, запустится непосредственно на экран сканера штрих-кода ZXing (или сбой, если ZXing не установлен). Как только штрих-код будет распознан, вы получите результат в своей деятельности, здесь, в переменной содержимого.

Чтобы избежать сбоев и упрощения для вас, ZXing предоставил класс утилиты, который вы могли бы интегрировать в свое приложение, чтобы сделать установку ZXing более плавным, перенаправив пользователя на Android Market, если он уже не установлен.

Наконец, если вы хотите интегрировать сканирование штрих-кода прямо в ваше приложение, не полагаясь на наличие отдельного приложения ZXing, хорошо, тогда это проект с открытым исходным кодом, и вы можете это сделать! 🙂

Вы можете использовать существующий сканер штрих-кода Zebra Crossing для Android, доступный по адресу: http://code.google.com/p/zxing/ . Обычно идея состоит в том, что вы будете ссылаться на нее с помощью намерений, как в примере здесь: http://code.google.com/p/zxing/wiki/ScanningViaIntent .

Zebra Crossing – лучший документированный java-1D или 2D-декодер штрих-кодов или кодировщик. Многие используют его, и он стал стандартом де-факто для Android. Здесь тоже есть здоровый шум .

RedLaser имеет api , но вам придется платить, если вы используете его в производстве. Когда я попробовал это, я не нашел впечатляющего улучшения по сравнению с Zebra Crossing. Конечно, не по цене .

Jjil делает штрих-коды, но в проекте всего 3 коммиттера , и я никогда не использовал его сам, поэтому я не знаю, что вам сказать об этом. Его источник , безусловно, читаем.

После того, как вы начнете читать , вы обнаружите, что читателям сложно реализовать вещи из-за размытых изображений, шума, искажений, странных углов и т. Д. Поэтому, если вы хотите что-то надежное, вы, вероятно, захотите пойти с библиотекой, поддерживаемой сообществом.

Вы можете использовать zbar library. Загрузите его с: http://sourceforge.net/projects/zbar/files/AndroidSDK/

Я думаю, что это быстрее и точнее, чем zxing.