2016-07-22 14 views
1

Ich habe einen physischen Barcode-Scanner und ich möchte, dass seine Eingabe, d. H. Der Barcode, in der App ohne eine fokussierte EditText bekommen.Android Barcode-Scanner-Eingang ohne Edittext

Ich habe versucht, eine KeyListener in meinem Activity. Es wurde jedoch keine der implementierten Methoden (onKeyUp, onKeyDown usw.) aufgerufen.

Dann fügte ich die dispatchKeyEvent, die funktionierte, aber nie so oft wie die Barcode-Länge aufgerufen wird. Stattdessen, bevor der Barcode gelesen wird, wird einige zufällige button in meiner Sicht Fokus aus dem Barcode-Scanner.

Ich habe ein paar Fragen da draußen in SO gesehen, aber keine gab wirklich eine konkrete Antwort.

+0

Ich denke, Um dies wirklich zu lösen, benötigen Sie eine Dokumentation aus dem Barcode-Scanner - was genau soll es an Ihre App senden? Emuliert es eine Tastatur (das Übliche) oder etwas anderes? Weitere Hinweise aus der Dokumentation des Geräts? – GreyBeardedGeek

+0

Die Dokumentation gesucht, aber nichts gefunden. Ich habe es mit einem 'EditText' getestet und meine einzige Schlussfolgerung ist, dass nach dem Einsenden des Barcodes eine 'ENTER'-Taste gedrückt wird – XeniaSis

Antwort

1

e.getCharacters() sollte Ihnen den vollständigen Barcode geben. Dieses auf einem PL-40L-Gerät mit integriertem 2d Barcodeleser für mich arbeitet, ist Android 5.1 dispatchKeyEvent (KeyEvent e) für jeden Barcode gelesen ausgelöst einmal ausgeführt wird, nicht für jedes Zeichen in dem Barcode Hoffnung hilft diese