Skip to content

Barcode Scanner Component ​

The BarcodeScannerComponent provides a bridge to the device's native camera for scanning barcodes and QR codes.

Basic Info ​

Description ​

This component launches a native view equipped with ML Kit to scan various barcode types. Once a code is scanned, the result is sent back to the WebView via a bridge event.

How to Use ​

1. Web Implementation ​

Trigger the scanner and listen for the result.

javascript
import { useBarcodeScanner } from '@bagisto-native/react';

const ScannerComponent = () => {
    const { startScanning } = useBarcodeScanner();

    const handleScan = () => {
        startScanning((result) => {
            console.log("Scanned Code:", result.code);
            // Handle the scanned result
        });
    };

    return <button onClick={handleScan}>Open Scanner</button>;
};

2. Native Side ​

The component manages camera permissions and scanning.

kotlin
navigator.registerBridgeComponent("barcodeScanner", BarcodeScannerComponent(this))

Required Permissions ​

Add to AndroidManifest.xml:

xml
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" android:required="true" />

API Reference ​

MethodDescription
startScanning(callback)Opens camera and returns scanned result
stopScanning()Closes the scanner

Next Steps ​

Released under the MIT License.