5.3. Barcode Scanner
Die Barcode Scanner App ist eine Flutter-Anwendung zum Scannen von Barcodes und Anzeigen der Informationen zu den gescannten Barcodes. Die App bietet eine Benutzeroberfläche mit einem Kamera-Vorschaubildschirm und einer Liste der gescannten Barcodes.
5.3.1. Hauptfunktionalitäten
Der Code der Barcode Scanner App besteht aus einer Datei, main.dart
, die den Einstiegspunkt der App enthält. Die BarcodeScannerApp-Klasse repräsentiert das Wurzel-Widget der App und verwaltet den Zustand der Startseite.
In der BarcodeScannerApp
-Klasse werden die gescannten Barcodes in einer Liste von ScannedBarcode
-Objekten gespeichert. Die Liste wird mithilfe des SharedPreferences-Pakets lokal auf dem Gerät gespeichert. Die Methoden loadScannedBarcodes
und saveScannedBarcodes
ermöglichen das Laden und Speichern der Barcodes.
Der Code enthält auch die Methode _scanBarcode
, die den Barcode-Scanvorgang behandelt. Sie verwendet das barcode_scanner
-Paket, um Barcodes zu scannen. Wenn ein Barcode gescannt wird, wird die Methode _showBarcodeInfoDialog
aufgerufen, um die Barcode-Informationen anzuzeigen und zu speichern.
5.3.2. Rest API
Zusätzlich gibt es eine Funktion zur Überprüfung der Barcodes auf einem Remote-Server. Hierbei wird eine API-Anfrage verwendet, um Informationen zu einem gescannten Barcode abzurufen. Wenn der Barcode auf dem Server gefunden wird, werden der Name und die Beschreibung des Barcodes abgerufen und in der App angezeigt. Wenn der Barcode nicht gefunden wird, wird man aufgefordert, einen Namen und eine Beschreibung einzugeben, um die Informationen auf dem Server zu speichern.
Mehr über die RestAPI wird in Punkt 5.4 erklärt.
5.3.3. Popup-Fenster für Informationen und Einstellungen
Die App bietet auch Informationen in Form von Popups. Wenn beim Barcode-Scan ein Fehler auftritt, wird ein Popup-Fenster mit entsprechender Fehlermeldung angezeigt. Ebenso werden Popup-Fenster verwendet, um dem Benutzer Anweisungen oder Eingabeaufforderungen zu geben, z.B. wenn ein Barcode nicht auf dem Server gefunden wird und man einen Namen und eine Beschreibung eingeben soll.
Des Weiteren gibt es in der App einen Einstellungsbereich, in dem der Benutzer die API-Endpunkte für das Abrufen und Senden von Barcode-Informationen konfigurieren kann. Dies ermöglicht eine Anpassung der App an verschiedene Backend-Server oder APIs.
5.3.4. Zusammenfassung
Diese App demonstriert die Verwendung von Widgets, das Laden und Speichern von Daten sowie die Interaktion mit externen Paketen und einem Remote-Server.