Странное поведение в сканере штрих-кода (Android) - PullRequest
2 голосов
/ 08 августа 2011

Я занимаюсь разработкой приложения для Android и в настоящее время у меня возникают проблемы с запуском сканера штрих-кода (Zxing). Я использую Zxing как «библиотечный проект» в Eclipse.

Я создал основной проект Zxing с помощью Ant, создал свой проект Zxing android, импортировав исходники в Eclipse и отметив флажок «Is Library». (Этот проект использует "core.jar" в своих зависимостях.)

Тогда у меня есть мой главный проект, который использует проект библиотеки Zxing, этот проект также использует "core.jar".

Итак, вот в чем проблема, когда я запускаю свое приложение и запускаю «Сканер штрих-кода», вот что я вижу на экране:

http://imageshack.us/photo/my-images/52/screenbarcodescanner.png/ (Извините, но у меня недостаточно репутации, чтобы разместить свой экран здесь)

Странно то, что, кажется, что-то узнает, когда я кладу руку перед камерой или штрих-код, QR-код (он не сканирует, но на красной линии появляются зеленые точки, вы знаете, немного сложно нацелить код, не видя ничего на экране;))

Наконец, вот как я называю Intent и управляю результатом, основным способом, как написано на кодовой странице Zxing Google:

    @Override
public void onClick(View sender)
{
    if(sender.equals(_scan_button))
    {
        startActivityForResult(new Intent("com.google.zxing.client.android.SCAN"), 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 the result
        } else if (resultCode == RESULT_CANCELED) {
            // Handle cancel
        }
    }
}

На самом деле я не предоставляю формат кода Intent, потому что я хочу, чтобы он сканировал любой формат кода.

Последнее, что я могу сказать, это то, что перед тем, как сделать это с Zxing в качестве библиотечного проекта, я использовал просто как «зависимость проекта», поэтому Zxing apk был установлен на моем телефоне, если не установлен, перед запуском основной проект. Все работало очень хорошо, теперь оно встроено, ... я застрял, и я не знаю, почему или чего мне не хватает.

Спасибо за ваши ответы!

1 Ответ

0 голосов
/ 13 августа 2011

Вы перепутали здесь. Если вы интегрируете с помощью Intent, вам не нужен код из сканера штрих-кода. В проекте все, что вам может понадобиться, это небольшой фрагмент кода интеграции, который вы найдете в android-integration. Это должно решить вашу проблему.

...