商米POS红外扫码
·
参考文档:扫码器使用指南
一、设置接收模式
方法一:在“设置 ”->“扫码与键盘 ”中修改为“不输出 ”+“广播输出 ”。
方法二(建议):action:com.sunmi.scanner.ACTION_BAR_DEVICES_SETTING
//红外扫码设置接收模式
//方法二(建议):action:com.sunmi.scanner.ACTION_BAR_DEVICES_SETTING
Intent intent = new Intent();
intent.setAction("com.sunmi.scanner.ACTION_BAR_DEVICES_SETTING");
intent.putExtra("name","Point of Sale Fixed Barcode Scanner.");
intent.putExtra("pid",9492);
intent.putExtra("vid",1529);
intent.putExtra("type",2); //1 KeyEvent 输出 2 广播输出
intent.putExtra("toast",true);
context.sendBroadcast(intent);
二、通过广播接收扫码内容
监听⼴播:"com.sunmi.scanner.ACTION_DATA_CODE_RECEIVED"
private static final String ACTION_DATA_CODE_RECEIVED =
"com.sunmi.scanner.ACTION_DATA_CODE_RECEIVED";
private static final String DATA = "data";
private BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String code = intent.getStringExtra(DATA);
if (code != null && !code.isEmpty()) {
Log.d(TAG, new Date().toString() + " " + code);
((TextView) findViewById(R.id.textView)).setText(new Date().toString() + " " + code);
}
}
};
private void registerReceiver() {
IntentFilter filter = new IntentFilter();
filter.addAction(ACTION_DATA_CODE_RECEIVED);
registerReceiver(receiver, filter);
}
上述代码在商米V2s上测试通过,其它设备尚未测试。
更多推荐


所有评论(0)