Android bt hid(bluedroid)和linux HID-subsystem
16lz
2021-01-23
Android采用bluedroid后,stack运行在用户空间,那bthid如何与linux HID-subsystem联系呢?
答案就是UHID。
UHID - User-space I/O driver support forHID subsystem
详情参考:
\kernel\Documentation\hid\uhid.txt
Bluedroid:
\android\external\bluetooth\bluedroid\btif\co\bta_hh_co.c
Open uhid:
const char *dev_path ="/dev/uhid";
p_dev->fd = open(dev_path, O_RDWR |O_CLOEXEC);
create hid dev
ev.type = UHID_CREATE;
result =uhid_write(p_dev->fd, &ev);
hid_report:
ev.type = UHID_INPUT;
returnuhid_write(fd, &ev);
destroy hid dev
ev.type = UHID_DESTROY;
uhid_write(fd, &ev);
close uhid:
close(fd);更多相关文章
- Android 用户界面
- Android 月活跃人数超过10亿用户了,我却审美疲劳了
- Android 深入解析用户界面(四)
- Android—Android中监听EditText文本输入,实现修改用户名,清除密码
- Android 4.0 用户输入子系统
- 判断Android的WIFI与GPS状态,并引导用户前去开启GPS与WIFI设置
- Android 2.3用户增长到10%
- 《Android移动应用基础教程》(Android Studio)(第二版)黑马教程 课后
- Android APK安装失败,共享用户不兼容 INSTALL_FAILED_SHARED_USER