android接触--遥控的配置

第三个星期,接到第一个有实际意义的任务,要求:把一个旧版本上的遥控配置移植到新的版本上。

一个非常简单的任务,而且把基本的配置文件路径都大概跟我说了一下,最主要的是还有旧版本的git修改记录可以看,这对于任何一个人来书都是一件非常简单的事吧,但是我做得很不简单。

配置文件,xx.conf,很简单,很快,我就能在git历史上找到,更新了。

还有keylayout文件,就是键盘映射,这个貌似改来改去都是一个样,也八九不离十了。

但是结果一直是遥控没效果,搞了几天,看了一天又一天的android按键流程,但网上的博客都是你抄我的,我抄你的,一个样。

最后才在一个偶然的事情上,得到公司硬件的同事关注,原来遥控有问题,也好像是板子接收器有问题,也好像是电源有问题,这个我不懂,也没法涉及,所以等待他给我弄好,最后,回来试了一下,果然OK,什么按键都OK了,可是,还是在另外一个问题上花费了几天,到现在还没解决。

那就是怎么样才能让我的遥控对应自己的字符映射?android上,按键流程基本是linux底层通过.conf文件得到按键扫描码,这个扫描码是在linux上input设备用的,然后扫描码通过andriod访问.kl文件,得到按键的键盘映射,也就是所谓的A,B,C,,1,2,3,CTRL键,对于A,B,C和数字键,在不同情况有不同意义,比如加上CAP后是大写或者加上shift是小写等等都是通过kcm文件来映射,也就是字符映射,最后才得出输入框上的a,b,c或@#$,但是,遥控上的键盘是数字键盘,也就是以前手机的键盘类型,通过多次按,来得到不同的字符,而android本身的虚拟键盘或usb键盘都是全键盘,就是所有字符都有,问题就来了,怎么让不同的输入设备对于不同的kcm文件,好让映射成功?

在尝试了N次之后,发现了遥控和虚拟键盘都是使用virtual.kcm文件来映射,一但改了,两个输入设备都变了,就像把virtual.kcm的类型改成NUMERIC类型,遥控能正常实现一键通过多次按,实现多字符的情况,但是发现虚拟键盘里面的数字键也跟着改变,按一次改变一个字符,不断切换。。。

想到的办法肯定是新建一个kcm文件,让我的遥控器独自去映射一个文件,可想法简单,需要接触到的内核结构不简单的。

网上有个办法,是配置系统属性,system.prop,或通过setprop来设置,但是都没效果,不知道是我弄错了还是怎么了,所以到现在没搞定。

由于老大发现我搞这个问题,就说之前的遥控只用来输数字的,所以不用管那么多,不需要切换字符。。。

在继续深入下去肯定不简单,但是,老大说做别的就做别的吧。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
irremote-8266是一款基于ESP8266芯片的红外遥控模块。它可以通过WiFi连接至手机或其他设备,并通过接收和发送红外信号来控制家电设备,比如电视、空调等。 在配置irremote-8266时,首先需要连接至WiFi网络。我们可以通过编程进行配置,具体步骤如下: 1. 首先,确保irremote-8266已正确连接到ESP8266开发板上。这可以通过将irremote-8266与开发板上的相应引脚连接起来进行实现。 2. 使用Arduino IDE等开发工具打开irremote-8266示例代码。这些示例代码可以从相关的开源库或官方网站上获取。 3. 在代码中,找到WiFi配置的部分。一般而言,这部分代码会要求你输入要连接的WiFi网络的名称(SSID)和密码。 4. 在配置部分,将你要连接的WiFi网络的名称和密码填写进去。确保这些信息是正确的,以避免连接失败。 5. 使用USB线将ESP8266开发板连接至电脑,通过编译和上传代码到开发板。 6. 上传完成后,从串口监视器中可以查看irremote-8266连接到WiFi网络的状态。 7. 一旦irremote-8266成功连接到WiFi网络,就可以使用红外学习功能将遥控器的红外信号学习到irremote-8266中。这样,irremote-8266就可以模拟红外遥控信号。 总结起来,irremote-8266的配置其他的过程主要包括连接至WiFi网络和学习红外信号两个步骤。通过合适的示例代码和网络配置,我们可以实现irremote-8266的配置和使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值