实现一个小功能:按下volume_up键后启动settings app

在frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java文件的

public long interceptKeyBeforeDispatching(WindowState win, KeyEvent event, int policyFlags) {}

方法里加段代码就可实现,如下:

 } else if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
            if (!keyguardOn) {
                if (down && repeatCount == 0) {
                    mContext.startActivity(new Intent(Settings.ACTION_SETTINGS));
                }
            }
            return -1;
} else if (keyCode == KeyEvent.KEYCODE_N && event.isMetaPressed()) {
    if (down) {
        IStatusBarService service = getStatusBarService();
        if (service != null) {
            try {
                service.expandNotificationsPanel();
            } catch (RemoteException e) {
                // do nothing.
            }
        }
    }
}

//红色部分便是所加代码,编译后刷system.img。开启手机发现按音量加键就可以启动settings app了。


版权声明:本文为e2425844263原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。