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..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 @@ -76,8 +76,17 @@ 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 + ) + //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..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 @@ -152,7 +152,14 @@ 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 + ) .build() } val scanner = remember { BarcodeScanning.getClient(options) }