如何获取Android手机三个硬按键的状态信息
怎么获取手机上三个硬按键的状态信息?用代码实现 --------------------编程问答-------------------- 我最近也碰到了这个问题;处于系统安全性,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
--------------------编程问答-------------------- 若想模拟三个硬按键往手机系统发送,使之能实现手机上硬按键功能。 --------------------编程问答-------------------- 这样么?
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();
}
此方法不行!各位大虾有没有其他方法呀 --------------------编程问答--------------------
忘了说下,那个KeyEvent.KEYCODE_MENU需要用你对应的按键去替换的 --------------------编程问答--------------------
这样么?
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();
}
此方法不行!各位大虾有没有其他方法呀
忘了说下,那个KeyEvent.KEYCODE_MENU需要用你对应的按键去替换的
返回硬按鍵能实现功能,但为什么主菜单和设置硬按鍵不成功? --------------------编程问答-------------------- 需要权限,楼主加上系统权限 --------------------编程问答-------------------- 在root过的手机上运行程序也无法操作成功! --------------------编程问答-------------------- 监控音量键
监控HOME键 --------------------编程问答-------------------- 有谁知道如何操作的??
补充:移动开发 , Android