最近有个项目机顶盒要适配蓝牙遥控器,我们原来的盒子是红外的遥控器。
从某宝买回来几款通用的遥控器,最简单的一款用cat /proc/bus/input/devices 命令查看name是BESCO KSL81P304
在网上查找很多Android系统适配蓝牙遥控器键值相关的文档,发现没有一个彻底解决了我的问题。
先说我遇到的问题
1.蓝牙遥控器的HOME键点击后程序会回到android默认界面。我们要的效果是按蓝牙遥控器的home键回到程序首页界面,类似于MENU键效果。
2.蓝牙遥控器的返回键没起作用。(我们盒子程序的界面用的H5展示,WebView加载H5界面,中间有很多页面跳转都是H5做的,所以进入一个页面后,要按返回键回到上个界面)
解决办法:
第一步:进入安卓系统,执行logcat -c清下缓存,然后执行logcat命令
然后点击蓝牙遥控器返回键,拿到返回键对应的键值KeyLayoutMap( 1862): gc: scanCode记下 scanCode 的值。
第二步:
进入/system/usr/keylayout/目录,打开Generic.kl默认配置文件。