zxing-android-embedded icon indicating copy to clipboard operation
zxing-android-embedded copied to clipboard

Stops the reader of the handheld terminal.

Open hasanozn opened this issue 7 months ago • 4 comments

Description of the problem:

When I read the zxing barcode via the handheld terminal, it reads it on the terminal's camera, but it stops the terminal's own scanner.

Which library version are you using? E.g. 3.2.0. 3.2.0 Which phone/tablet are you using, and which Android version does it run? (e.g. Samsung Galaxy S5, Android 5.0)

Android 11 Hyatta Model 5 Handheld Terminal

Does the same happen on other devices or an emulator?

Yes that happens all handheld terminals.

Can you reproduce the issue in the sample project included with the library? If not, can you provide your own sample project or sample code that produces this error?

fun Fragment.showBarcodeDialog( result: (barcodeText: String) -> Unit = {} ) { showDialog(object : ViewConvertListener<DialogStockMngScanBarcodeBinding> { override fun provideViewBinding( inflater: LayoutInflater, container: ViewGroup? ): DialogStockMngScanBarcodeBinding { return DialogStockMngScanBarcodeBinding.inflate(inflater, container, false) } override fun convertView( vb: DialogStockMngScanBarcodeBinding, dialog: BaseMyDialog<DialogStockMngScanBarcodeBinding> ) {

        val formats: Collection<BarcodeFormat> = listOf(BarcodeFormat.QR_CODE, BarcodeFormat.CODE_39,BarcodeFormat.CODE_128, BarcodeFormat.EAN_13, BarcodeFormat.DATA_MATRIX)
        vb.barcodeView.barcodeView.decoderFactory = DefaultDecoderFactory(formats)
        vb.barcodeView.initializeFromIntent(requireActivity().intent)
        vb.barcodeView.decodeContinuous(object : BarcodeCallback {
            override fun barcodeResult(br: BarcodeResult?) {
                br?.text?.let {
                    result(it)
                }
                vb.barcodeView.pause()

                dialog.dismiss()
            }

            override fun possibleResultPoints(resultPoints: MutableList<ResultPoint>?) {
            }
        })
        vb.barcodeView.resume()

        vb.swFlashlight.setOnCheckedChangeListener { _, checked ->
            if (checked) vb.barcodeView.setTorchOn() else vb.barcodeView.setTorchOff()
        }
    }
})

}

In the case of an error do you have a stack trace or adb logs? No that not gives logs.

hasanozn avatar Feb 01 '24 07:02 hasanozn

That sounds like a device issue rather than an issue with this library.

Does the scanner continue working when using other camera or barcode scanning apps?

rkistner avatar Feb 01 '24 07:02 rkistner

I tried it on another handheld terminal and the result is the same.

hasanozn avatar Feb 01 '24 08:02 hasanozn

I mean the device model, not the specific device.

We don't interact with the terminal's own scanner at all, so it is most likely something in the terminal itself that deactivates the scanner when the camera is used.

rkistner avatar Feb 01 '24 08:02 rkistner

By the way, when I delete the barcodeview.resume line, there is no problem.

hasanozn avatar Feb 01 '24 08:02 hasanozn