Android L版本怎样识别耳机按键长按or短按
时间:10-02
整理:3721RD
点击:
[DESCRIPTION]
L版本accdet驱动已经不再检测耳机按键是短按还是长按,是由上层来做的。
[SOLUTION]
L版本accdet驱动不管耳机按键长按or短按,上报的key都是统一的。
alps\kernel-3.10\drivers\misc\mediatek\accdet\mt6752\accdet.c
在L版本accdet驱动里面,不管耳机按键长按or短按,down key上报KEY_VOLUMEDOWN
up key上报KEY_VOLUMEUP,MD key上报KEY_PLAYPAUSE
至于切换歌曲、调大调小声音等操作,上层APK都可以根据这些固定的sanCode来做调整。
上层耳机按键长按or短按检测方法:
底层会报keycode down和keycode up,上层会计算up和down之间的时间,
如果大于500ms(此事件客户可以指定)就是长按,小于就是短按。
上层有个onLongCLIck函数。
Demo code随便在andorid 的source code中搜onLongClick就可以搜到。
L版本accdet驱动已经不再检测耳机按键是短按还是长按,是由上层来做的。
[SOLUTION]
L版本accdet驱动不管耳机按键长按or短按,上报的key都是统一的。
alps\kernel-3.10\drivers\misc\mediatek\accdet\mt6752\accdet.c
在L版本accdet驱动里面,不管耳机按键长按or短按,down key上报KEY_VOLUMEDOWN
up key上报KEY_VOLUMEUP,MD key上报KEY_PLAYPAUSE
至于切换歌曲、调大调小声音等操作,上层APK都可以根据这些固定的sanCode来做调整。
上层耳机按键长按or短按检测方法:
底层会报keycode down和keycode up,上层会计算up和down之间的时间,
如果大于500ms(此事件客户可以指定)就是长按,小于就是短按。
上层有个onLongCLIck函数。
Demo code随便在andorid 的source code中搜onLongClick就可以搜到。