之前开发的平板称重最近用户反映扫描枪扫描出来的数据不准确,后经过在平板连接扫描枪测试发现:
1、大华平板上安装的讯飞输入法会影响扫描枪数据的读取,导致缺少位数或者乱码,联想小新平板安装输入法不受影响,正常读取数据
2、发现一个新的可能,外接扫描枪有可能会出现回车触发事件要比条码显示速度快,导致条码框里的条码缺少位数就被用来数据查询,使用延迟1秒的方法进行处理
private Handler handler;
//条码框事件
text.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_ENTER && event.getAction() == KeyEvent.ACTION_DOWN) {
handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
queryData(text.getText().toString());
clearTextAndsetFocus();
}
}, 1000);
}
return false;
}
});