SDK Android:如何打开设备的关机/重启对话框

SDK Android:如何打开设备的关机/重启对话框,android,sdk,dialog,shutdown,reboot,Android,Sdk,Dialog,Shutdown,Reboot,我是新来的 我有一个问题,我试图关闭一个4.2.2安卓设备(不是root) 我知道ACTION\u SHUTDOWN不适用于取消启动设备 所以我想打开现有的关机/重启/飞行对话框,就像我们维护开/关按钮一样。然后用户只需单击关机按钮 我试着用这种方式创作,没有结果 Intent intent = new Intent(Settings.ACTION_DISPLAY_SETTINGS); // or others settings startActivity(intent);

我是新来的

我有一个问题,我试图关闭一个4.2.2安卓设备(不是root)

我知道
ACTION\u SHUTDOWN
不适用于取消启动设备

所以我想打开现有的关机/重启/飞行对话框,就像我们维护开/关按钮一样。然后用户只需单击关机按钮

我试着用这种方式创作,没有结果

Intent intent = new Intent(Settings.ACTION_DISPLAY_SETTINGS); // or others settings         
startActivity(intent);
谢谢

InputManager.getInstance().injectInputEvent(new InputEvent(KeyEvent.KEYCODE_POWER, keyCode), sync);
“同步”变为以下任一项:

InputManager.INJECT_INPUT_EVENT_MODE_WAIT_FOR_FINISH 
InputManager.INJECT_INPUT_EVENT_MODE_WAIT_FOR_RESULT
你需要

import android.hardware.input.InputManager;
这是未经测试的,但让您朝着正确的方向前进,同时也要记住,这样的功能是不推荐的

否则:

public static void simulateKey(final int KeyCode) {

    new Thread() {
        @Override
        public void run() {
            try {
                Instrumentation inst = new Instrumentation();
                inst.sendKeyDownUpSync(KeyCode);
            } catch (Exception e) {
                Log.e("Exception when sendKeyDownUpSync", e.toString());
            }
        }

    }.start();
}
简单地说

simulateKey(KeyEvent.KEYCODE_POWER);

没有公共sdk访问权限以编程方式打开电源按钮菜单。

此链接具有此处的所有方法。

injectInputEvent不适用于我的APK,我明白了。我尝试simulateKey(),没有错误,但没有结果,它不是打开关闭对话框,可能是重复的