From e2cd233dc38ce9f1b5beaa019269290b1676412e Mon Sep 17 00:00:00 2001 From: Gaurav-eightinity01 Date: Wed, 26 Nov 2025 14:56:29 +0530 Subject: [PATCH 1/2] Support additional barcode formats in scanner Expanded barcode scanning to include CODE_128, CODE_39, CODE_93, UPC_E, and QR_CODE formats in both the service and camera preview. This allows the app to recognize a wider variety of barcodes beyond EAN-8 and EAN-13. --- .../model/source/mlkit/BarcodeScannerService.kt | 14 ++++++++++++-- .../ui/view/component/CameraPreview.kt | 10 +++++++++- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/lc/fungee/IngrediCheck/model/source/mlkit/BarcodeScannerService.kt b/app/src/main/java/lc/fungee/IngrediCheck/model/source/mlkit/BarcodeScannerService.kt index 510789c..3262e80 100644 --- a/app/src/main/java/lc/fungee/IngrediCheck/model/source/mlkit/BarcodeScannerService.kt +++ b/app/src/main/java/lc/fungee/IngrediCheck/model/source/mlkit/BarcodeScannerService.kt @@ -76,8 +76,18 @@ class MlKitBarcodeScanner : BarcodeScannerService { val image = InputImage.fromBitmap(bmp, 0) val scanner = BarcodeScanning.getClient() val barcodes = scanner.process(image).await() - barcodes.firstOrNull { it.rawValue?.isNotBlank() == true && - (it.format == Barcode.FORMAT_EAN_8 || it.format == Barcode.FORMAT_EAN_13) + barcodes.firstOrNull { + it.rawValue?.isNotBlank() == true && + ( + it.format == Barcode.FORMAT_EAN_8 || + it.format == Barcode.FORMAT_EAN_13 || + it.format == Barcode.FORMAT_CODE_128 || + it.format == Barcode.FORMAT_CODE_39 || + it.format == Barcode.FORMAT_CODE_93 || + it.format == Barcode.FORMAT_UPC_E || + it.format == Barcode.FORMAT_QR_CODE + ) + //added more types of barcode to scan and + QR code }?.rawValue } catch (t: Throwable) { Log.e("Barcode", "Error detecting barcode from image", t) diff --git a/app/src/main/java/lc/fungee/IngrediCheck/ui/view/component/CameraPreview.kt b/app/src/main/java/lc/fungee/IngrediCheck/ui/view/component/CameraPreview.kt index f6d9e1d..8d57e55 100644 --- a/app/src/main/java/lc/fungee/IngrediCheck/ui/view/component/CameraPreview.kt +++ b/app/src/main/java/lc/fungee/IngrediCheck/ui/view/component/CameraPreview.kt @@ -152,7 +152,15 @@ fun CameraPreview( // Use cases shared across modes val options = remember { BarcodeScannerOptions.Builder() - .setBarcodeFormats(Barcode.FORMAT_EAN_8, Barcode.FORMAT_EAN_13) + .setBarcodeFormats( + Barcode.FORMAT_EAN_8, + Barcode.FORMAT_EAN_13, + Barcode.FORMAT_CODE_128, + Barcode.FORMAT_CODE_39, + Barcode.FORMAT_CODE_93, + Barcode.FORMAT_UPC_E, + Barcode.FORMAT_QR_CODE + ) .build() } val scanner = remember { BarcodeScanning.getClient(options) } From 0e395fd2a9660c144de0f5f698de7ab142727fde Mon Sep 17 00:00:00 2001 From: Vishal Paliwal Date: Thu, 27 Nov 2025 16:04:21 +0530 Subject: [PATCH 2/2] Remove QR code support from barcode scanning QR code format has been removed from the list of supported barcode formats in both BarcodeScannerService and CameraPreview. Only UPC_E and other code formats are now scanned. --- .../IngrediCheck/model/source/mlkit/BarcodeScannerService.kt | 3 +-- .../lc/fungee/IngrediCheck/ui/view/component/CameraPreview.kt | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/lc/fungee/IngrediCheck/model/source/mlkit/BarcodeScannerService.kt b/app/src/main/java/lc/fungee/IngrediCheck/model/source/mlkit/BarcodeScannerService.kt index 3262e80..3adcf8d 100644 --- a/app/src/main/java/lc/fungee/IngrediCheck/model/source/mlkit/BarcodeScannerService.kt +++ b/app/src/main/java/lc/fungee/IngrediCheck/model/source/mlkit/BarcodeScannerService.kt @@ -84,8 +84,7 @@ class MlKitBarcodeScanner : BarcodeScannerService { it.format == Barcode.FORMAT_CODE_128 || it.format == Barcode.FORMAT_CODE_39 || it.format == Barcode.FORMAT_CODE_93 || - it.format == Barcode.FORMAT_UPC_E || - it.format == Barcode.FORMAT_QR_CODE + it.format == Barcode.FORMAT_UPC_E ) //added more types of barcode to scan and + QR code }?.rawValue diff --git a/app/src/main/java/lc/fungee/IngrediCheck/ui/view/component/CameraPreview.kt b/app/src/main/java/lc/fungee/IngrediCheck/ui/view/component/CameraPreview.kt index 8d57e55..329f64b 100644 --- a/app/src/main/java/lc/fungee/IngrediCheck/ui/view/component/CameraPreview.kt +++ b/app/src/main/java/lc/fungee/IngrediCheck/ui/view/component/CameraPreview.kt @@ -158,8 +158,7 @@ fun CameraPreview( Barcode.FORMAT_CODE_128, Barcode.FORMAT_CODE_39, Barcode.FORMAT_CODE_93, - Barcode.FORMAT_UPC_E, - Barcode.FORMAT_QR_CODE + Barcode.FORMAT_UPC_E ) .build() }