5

外部激光条码扫描仪连接到 Android POS 设备。我需要在我的应用程序中访问扫描结果。这怎么可能?需要从 Android OS 版本 2.3 开始的支持。

4

2 回答 2

5

大多数 USB 扫描仪通过 HID 配置文件连接,因此 Android 应将其识别为键盘。解码的条形码将被“键入”到当前选定的字段中。

如果您想捕获结果而不将其输入可编辑字段,请参阅通过 Android 设备处理条形码扫描仪值

于 2013-11-15T16:59:40.933 回答
0

注意:我使用的是手持设备(称为:NBP-65)(使用其 SDK -> iScan SDK),因此您可能需要检查您使用的设备是否有额外的意图来从中获取数据,android.intent.action.SCANRESULT例如我的情况。


我有一个类似的问题。我需要从 Handheld android(QR 扫描仪设备)获取数据。您可以通过为操作 注册广播接收器来从条形码扫描仪获取扫描结果,并使用keyandroid.intent.action.SCANRESULT获取额外数据。所以接收器会是这样的 value

 private final BroadcastReceiver receiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent.getAction().equals("android.intent.action.SCANRESULT")) {
            String qrCode = intent.getStringExtra("value");
            int barocodelen = intent.getIntExtra("length", 0);
            String type = intent.getStringExtra("type ");
            byte[] data = intent.getByteArrayExtra("bytedata");
        }
    }
};

并使用 register 方法注册您的接收器(或者您可以在清单文件中注册您的接收器)

registerReceiver(receiver, newIntentFilter("android.intent.action.SCANRESULT"));
于 2021-09-08T15:17:51.993 回答