Нет результата от сканера штрих-кода - PullRequest
3 голосов
/ 05 февраля 2012


Я использую ZXING IntentIntegrator для чтения URL.Мне удалось запустить сканер штрих-кода, используя:

IntentIntegrator integrator = new IntentIntegrator(List8.this);
dialog = integrator.initiateScan();

Сканер штрих-кода указал, что URL-адрес был найден, и перенаправил меня обратно в мое приложение, где я получил информацию, используя:

@Override
protected 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");
                Toast.makeText(getApplicationContext(), contents, Toast.LENGTH_LONG).show();
                // Handle successful scan
            } else if (resultCode == RESULT_CANCELED) {
                // Handle cancel
            }
        }


      }

Проблема в том, что даже если URL-адрес был найден, код запроса равен -1, а у намерения нет данных.
Кто-нибудь знает, каков источник моей проблемы?

PS
Я попытался реализовать onActivityResultListener, но получил следующую ошибку:

The return type is incompatible with PreferenceManager.OnActivityResultListener.onActivityResult(int, int, 
     Intent)

Ответы [ 2 ]

1 голос
/ 06 февраля 2012

Почему вы ожидаете, что resultCode не будет -1? resultCode используется для определения намерения, «почему», которое вы назвали действием для результата. Ни больше, ни меньше ... Я бы просто удалил if (requestCode == 0), так как это не очень важно.

0 голосов
/ 06 февраля 2012

Вы уверены, что не смотрите на resultCode?Значение RESULT_OK фактически равно -1 (http://developer.android.com/reference/android/app/Activity.html#RESULT_OK).

. Если вы используете код интеграции, то requestCode будет 0xC0DE на самом деле. Но вам не нужно беспокоиться оэти детали и получить их правильно, если вы просто используете IntentIntegrator.parseActivityResult() из проекта. См. javadoc, который показывает, как использовать это полностью.

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