首页 > 解决方案 > 安卓源。编辑关键事件

问题描述

当用户发送 KEYEVENT_SEARCH 时,我想重新分配事件。现在它只是在应用程序中启动搜索活动,如果您第二次按下它 - 它什么也不做。我必须重新定义事件,以便第一次单击打开搜索,并在下次关闭时关闭。我在哪里可以找到 android 推送响应?我尝试编辑它frameworks/base/core/java/com/android/internal/policy/PhoneFallbackEventHandler.java ,但它不起作用。

标签: javaandroidsystemandroid-source

解决方案


Android 键按以下顺序处理:

  1. 电话窗口管理器:
  • interceptKeyBeforeQueueing
  • interceptKeyBeforeDispatching
  1. 活动:onKeyDown/onKeyUp。应用程序可以覆盖处理键的功能。
  2. PhoneFallbackEventHandler:onKeyDown/onKeyUp

目前在2中处理搜索键。在onKeyUp中处理搜索键时,首先检查搜索对话框是否启动,然后选择startSearch或closeSearch。


推荐阅读