4

zxing でバルク モード スキャンを有効にするキーがあることを読みました。Android アプリケーションでこのキーを有効にする方法を教えてください。

現在、そのようなコードを使用してバーコードを個別にスキャンしています。

Intent intent = new Intent("com.google.zxing.client.android.SCAN");
intent.putExtra("SCAN_FORMATS", "PRODUCT_MODE,CODE_39,CODE_93,CODE_128,DATA_MATRIX,ITF");

startActivityForResult(intent, 0); // start the scan

ありがとう!

4

1 に答える 1

6

zxing には「一括モード」という概念はないと思います。

独自のアプリケーション内で zxing を使用しても、探している動作を確実に実装できます。質問に既にあるコードを使用して、スキャンを初めて開始します。この宣言をクラスに追加します。

ArrayList<String> results;

次に、スキャンを開始して初期化する前に、これを onCreate 内に追加します。

results = new ArrayList<String>();

onActivityResult() 内で、現在の結果を ArrayList に追加してから、次のスキャンを開始できます。

/*Here is where we come back after the Barcode Scanner is done*/
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
    if (requestCode == 0) {
        if (resultCode == RESULT_OK) {
            // contents contains whatever the code was
            String contents = intent.getStringExtra("SCAN_RESULT");

            // Format contains the type of code i.e. UPC, EAN, QRCode etc...
            String format = intent.getStringExtra("SCAN_RESULT_FORMAT");

            // Handle successful scan. In this example add contents to ArrayList
            results.add(contents);

            Intent intent = new Intent("com.google.zxing.client.android.SCAN");
            intent.putExtra("SCAN_FORMATS", "PRODUCT_MODE,CODE_39,CODE_93,CODE_128,DATA_MATRIX,ITF");
            startActivityForResult(intent, 0); // start the next scan
        } else if (resultCode == RESULT_CANCELED) {
            // User hass pressed 'back' instead of scanning. They are done.
            saveToCSV(results);
            //do whatever else you want.
        }
    }
}

それらをCSVファイルに保存することは、この特定の質問の範囲を超えていますが、周りを見回すと、その方法の例を見つけることができます. 学ぶための演習として空白のままにしておいてください。

于 2013-04-09T13:37:16.307 に答える