UNPKG

@phermange/datalogic-sdk-bridge

Version:

React Native bridge for Datalogic SDK - Barcode scanner integration for Expo apps

115 lines (83 loc) 2.72 kB
# @pierr/datalogic-sdk-bridge React Native bridge pour le SDK Datalogic - Intégration de scanner de codes-barres pour les applications Expo. ## Installation ```bash npm install @phermange/datalogic-sdk-bridge ``` ## Utilisation ### Import du module ```typescript import { BarcodeManager } from "@phermange/datalogic-sdk-bridge"; ``` ### Écoute des événements de scan ```typescript import { useEffect, useState } from "react"; import { BarcodeManager } from "@phermange/datalogic-sdk-bridge"; export default function ScannerComponent() { const [lastScannedCode, setLastScannedCode] = useState<string>(""); useEffect(() => { try { // Ajouter l'écouteur d'événements const subscription = BarcodeManager.addListener( "onBarcodeRead", (event) => { console.log("Code-barres scanné:", event.data); console.log("Timestamp:", event.timestamp); setLastScannedCode(event.data); } ); // Démarrer l'écoute du scanner BarcodeManager.addReadListener(); // Cleanup lors du démontage du composant return () => { subscription.remove(); BarcodeManager.removeReadListener(); }; } catch (error) { console.error("Erreur lors de l'initialisation du scanner:", error); } }, []); return ( <View style={{ flex: 1, justifyContent: "center", alignItems: "center" }}> <Text style={{ fontSize: 18, marginBottom: 20 }}>Scanner Datalogic</Text> {lastScannedCode ? ( <Text style={{ fontSize: 16, color: "green" }}> Dernier scan: {lastScannedCode} </Text> ) : ( <Text style={{ fontSize: 16, color: "gray" }}> En attente d'un scan... </Text> )} </View> ); } ``` ## API ### BarcodeManager #### `addReadListener()` Démarre l'écoute du scanner Datalogic. #### `removeReadListener()` Arrête l'écoute du scanner Datalogic. #### `addListener(eventName, listener)` Ajoute un écouteur d'événements pour les scans de codes-barres. **Paramètres:** - `eventName`: `"onBarcodeRead"` - `listener`: Fonction appelée lors d'un scan avec l'événement `BarcodeReadEvent` #### Types TypeScript ```typescript type BarcodeReadEvent = { data: string; // Le code-barres scanné timestamp: number; // Timestamp du scan }; ``` ## Plateformes supportées - ✅ Android - ❌ iOS (non supporté) - ❌ Web (non supporté) ## Prérequis - Expo SDK - Appareil Android avec scanner Datalogic intégré - Le SDK Datalogic Android est automatiquement inclus via JitPack ## Licence MIT