外部激光条码扫描仪连接到 Android POS 设备。我需要在我的应用程序中访问扫描结果。这怎么可能?需要从 Android OS 版本 2.3 开始的支持。
问问题
8202 次
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 回答