怎么获取手机上三个硬按键的状态信息?用代码实现

解决方案 »

  1.   

    我最近也碰到了这个问题;
    处于系统安全性,android阻止了onkey里面home和power键的截获
    只能捕获到back键因此home和power只能通过其它办法截获了,1.@Override  
    2.    public boolean onKeyDown(int keyCode, KeyEvent event) {   
    3.        if (keyCode == KeyEvent.KEYCODE_HOME) {   
    4.            return true;   
    5.        } else {   
    6.            return super.onKeyDown(keyCode, event);   
    7.        }   
    8.    }   
    9.  
    10.@Override  
    11.   public void onAttachedToWindow() {   
    12.       this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);   
    13.       super.onAttachedToWindow();   
    14.   } 
    这个办法虽然能捕获到home按键,但是按home时,不会回到android主屏幕
    最好的办法还是通过广播去监听了, 去网上查查home截获资料大堆
    power的捕获办法是广播监听SCREEN_ON和SCREEN_OFF
      

  2.   

    这样么?
    try
    {
    String keyCommand = "input keyevent " + KeyEvent.KEYCODE_MENU;
    Runtime runtime = Runtime.getRuntime();
    Process proc = runtime.exec(keyCommand);
    }
    catch (IOException e)
    {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
      

  3.   


    此方法不行!各位大虾有没有其他方法呀忘了说下,那个KeyEvent.KEYCODE_MENU需要用你对应的按键去替换的
      

  4.   


    此方法不行!各位大虾有没有其他方法呀忘了说下,那个KeyEvent.KEYCODE_MENU需要用你对应的按键去替换的
    返回硬按鍵能实现功能,但为什么主菜单和设置硬按鍵不成功?
      

  5.   

    在root过的手机上运行程序也无法操作成功!
      

  6.   

    监控音量键
    监控HOME键