Barcodes Scannen mit Google Flutter

von

Barcodes Scannen mit Flutter

In diesem Blogpost möchte ich kurz vorstellen, wie einfach sich die Abfrage von Bar- und QR-Codes in Flutter integrieren lässt. Dabei gehe ich zunächst kurz auf den Hintergrund ein und beschreibe dann die eigentliche Umsetzung.

Mehrwert

Die Hintergründe, warum Barcodes in eine App eingelesen werden sollen sind mannigfaltig. Im Grunde geht es aber immer um die schnelle Erfassung von Daten, die den Gebrauch der Anwendung vereinfacht oder beschleunigt. In unserem Fall soll die Suche nach bestimmten Informationen vereinfacht werden, indem man dem Nutzer - ohne langes Tippen - erlaubt, einfach einen Barcode zu scannen und so einen direkten Zugriff auf relevante Dokumente und Informationen ermöglicht.

Umsetzung

Für das hier beschriebene Beispiel kommt das Package flutter_barcode_scanner zum Einsatz, da es die Kameraabfrage und die eigentliche Barcode-Erkennung in einem Paket liefert. Wie gewohnt wird die Abhängigkeit in der pubspec.yaml Datei definiert und mittels des Terminalbefehls flutter pub get geladen.

dependencies:
  flutter_barcode_scanner: ^1.0.2

Für die Nutzung in iOS muss zusätzlich die Info.plist um den Schlüssel zur Karmeranutzung wie folgt ergänzt werden:

<key>NSCameraUsageDescription</key>
<string>Camera permission is required for barcode scanning.</string>

Für Android sind keine weiteren Schritte vonnöten. Damit haben wir es schon fast geschafft. Die Verwendung wird mit einer simplen Zeile Code gestartet und liefert den erkannten Wert als Sting zurück:

String barcodeScanRes = await FlutterBarcodeScanner.scanBarcode("#75042f", "Schließen", true, ScanMode.BARCODE);

Als Parameter können (in Reihenfolge) die Farbe der Scan-Overlay Linie, der Text des Abbruch-Buttons, ein Boolean zum Aktivieren oder Deaktivieren des Blitzes und der Scan-Modus (entweder Barcodes oder QR-Codes) übergeben werden. Mehr benötigt es nicht um eine einfache Erkennung von Barcodes in die eigene Flutter-App zu integrieren.

Wer eine mächtigere Lösung benötigt oder generell mehr mit visueller Bilderkennung experimentieren will kann auch einen Blick auf Firebase ML Vision von Google werfen. Neben der Erkennung von Bardoces erlaubt es die Integration diverser weiterer Bildklassifikatoren, die auch direkt auf das Gerät geladen werden können. Um die Erfassung des Bildes muss man sich hier aber selbst kümmern.

Fazit

Ich hoffe der Blogpost hat gezeigt, dass die Integration von Barcode-Sannern in Flutter dank der aktiven Community ein Leichtes ist. Durch den geringen Aufwand kann so die Nutzererfahrung effizient gesteigert werden, sei es zur Beschleunigung einer Suche, der schnellen Eintragung von Daten oder der Abfrage von Coupon- oder Flyercodes.


Kategorien: DartFlutter

Zurück