千家信息网

Android怎么实现连接蓝牙扫码器无输入框

发表于:2025-11-06 作者:千家信息网编辑
千家信息网最后更新 2025年11月06日,这篇文章主要介绍"Android怎么实现连接蓝牙扫码器无输入框"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"Android怎么实现连接蓝牙扫码器无输入框"文章
千家信息网最后更新 2025年11月06日Android怎么实现连接蓝牙扫码器无输入框

这篇文章主要介绍"Android怎么实现连接蓝牙扫码器无输入框"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"Android怎么实现连接蓝牙扫码器无输入框"文章能帮助大家解决问题。

Android 的APP 需要集成一个蓝牙扫码器, 特别的是,需要扫码的地方是没有输入框的(EditText),不能通过直觉上理解的通过对EditText输入事件进行监听处理,取得扫码结果。并且设备也没有提供SDK。

细想了一下, 蓝牙扫码器本质应该是个HID设备,相当于蓝牙键盘。而后豁然开朗。

每一次扫码应该会触发按键事件,通过监听当前Activity的按键事件,应该可以实现,无输入框的情况下取得扫码结果。

重载Activity中的dispatchKeyEvent实现按键监听。

@Override    public boolean dispatchKeyEvent(KeyEvent event) {        InputDevice inputDevice = event.getDevice();        if (inputDevice != null) {            int keyboardType = event.getDevice().getKeyboardType();            String deviceName = event.getDevice().getName();            boolean isVirtual = event.getDevice().isVirtual();            //可以根据输入设备信息判断是否为特定扫码器输入            if (!isVirtual) {                scannerHelper.onScanerInput(event);            }        }    }

通常扫码器在扫码结果后会追加一个结束字符,我的这个设备默认为回车。 所以接收到回车可以认为一个扫码结果"输入"完成。

public class ScannerHelper {    private String buffer ="";    private MainOneActivity mainOneActivity;    public ScannerHelper(MainOneActivity mainOneActivity){        this.mainOneActivity = mainOneActivity;    }    public void onScanerInput(KeyEvent event){        if(event.getKeyCode() == KeyEvent.KEYCODE_ENTER){            mainOneActivity.onScannerResult(buffer);//回调扫码结果            buffer="";        }else{            if (event.getAction() == KeyEvent.ACTION_UP && event.isPrintingKey()){                buffer +=  (char)event.getUnicodeChar();            }        }    }}

测试OK。

关于"Android怎么实现连接蓝牙扫码器无输入框"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。

输入 蓝牙 结果 设备 事件 按键 知识 监听 行业 不同 实用 开朗 豁然开朗 信息 内容 地方 字符 实用性 实际 情况 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 哔哩漫游的设置解析服务器 数据库设计用一个大表还是小表 长沙市软件开发有限公司 网络安全意识专项培训 怀旧服不同服务器联网吗 兖鼎互联网科技公司 网络安全知识讲座从哪里观看 iphone13 为什么连接不了服务器 win11激活服务器不可用 服务器E14s 解释网络安全威胁 常用的云数据库厂商 山西软件开发价格服务标准 三种软件开发生命周期的特点 聊天软件开发意义背景 昆山海泽网络技术有限公司 佛山安卓软件开发定制费用 饥荒服务器管理系统 网络安全和安全工程哪个好 华为服务器卡在初始化界面 文华学院计算机网络技术 如何导出数据库备份文件 看门狗2一直提示连接不到服务器 互联网科技公司都有哪些 lol澳洲服务器 信息安全与网络技术培训新闻稿 lr 动态 数据库 服务器锁定和管理怎么解决 金卡智能软件开发薪资 95女想转行软件开发
0