Improve code

This commit is contained in:
Benoit Marty
2025-12-11 17:07:55 +01:00
parent 3edbfccb6b
commit 8217b0bea0
@@ -20,17 +20,19 @@ internal class QRCodeAnalyzer(
private val reader by lazy { BarcodeReader() } private val reader by lazy { BarcodeReader() }
override fun analyze(image: ImageProxy) { override fun analyze(image: ImageProxy) {
if (image.format in SUPPORTED_IMAGE_FORMATS) { image.use {
try { if (image.format in SUPPORTED_IMAGE_FORMATS) {
val bytes = reader.read(image).firstNotNullOfOrNull { it.bytes } try {
if (bytes != null) { val bytes = reader.read(image).firstNotNullOfOrNull { it.bytes }
Timber.d("QR code scanned!") if (bytes != null) {
onScanQrCode(bytes) Timber.d("QR code scanned!")
onScanQrCode(bytes)
}
} catch (e: Exception) {
Timber.w(e, "Error decoding QR code")
} }
} catch (e: Exception) { } else {
Timber.w(e, "Error decoding QR code") Timber.w("Unsupported image format: ${image.format}")
} finally {
image.close()
} }
} }
} }