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