Question

This code scan single record return back to my app. How to scan multiple record without returning back.

Intent intentScan = new Intent("com.google.zxing.client.android.SCAN"); intentScan.addCategory(Intent.CATEGORY_DEFAULT);

String targetAppPackage = findTargetAppPackage(intentScan);
if (targetAppPackage == null) {
  return showDownloadDialog();
}
intentScan.setPackage(targetAppPackage);
intentScan.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intentScan.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
attachMoreExtras(intentScan);
startActivityForResult(intentScan, 0);
Was it helpful?

Solution

Update your onActivityResult method like this

    //method for getting qr code from qr code after scan
            public void onActivityResult(int requestCode, int resultCode, Intent intent) {
                if (requestCode == 0) {
                    if (resultCode == RESULT_OK) {
                String contents = intent.getStringExtra("SCAN_RESULT");
Toast.makeText(this, contents , Toast.LENGTH_SHORT).show();     
    //start activity for scanning qr code
                Intent intent = new Intent("com.google.zxing.client.android.SCAN");
                intent.putExtra("SCAN_MODE", "QR_CODE_MODE");
                startActivityForResult(intent, 0);

                        // Handle successful scan
                    } else if (resultCode == RESULT_CANCELED) {
                        // Handle cancel
                        Log.d("the result is","not ok");
                    }
                }
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top