【问题标题】:error executing reboot command in android在android中执行重启命令时出错
【发布时间】:2015-08-27 07:56:25
【问题描述】:

我正在尝试在我的应用中关闭并重新启动。 我用谷歌搜索并在 stackoverflow 上找到了一些已回答的问题,但所有人都说设备必须植根,这在我的情况下是不可能的。这些命令也是特定于设备的。 是否有任何选项可以通过编程方式关闭或重新启动 android 设备
尝试了以下事情

String command="/system/bin/reboot";

        try { // Run Script

            proc = runtime.exec("su");
            osw = new OutputStreamWriter(proc.getOutputStream());
                                osw.write(command);
                    osw.flush();
            osw.close();

        } catch (IOException ex) {}

Runtime.getRuntime().exec(new String[]{"su","-c","reboot now"});

【问题讨论】:

  • 如果您能够使用设备密钥为您的应用程序签名,那么您也许可以在没有 root 的情况下在您的设备上执行此操作。

标签: android shutdown reboot android-reboot


【解决方案1】:

我现在拥有的设备已植根,因此我无法对其进行测试,但是您需要如何使用设备密钥对应用程序进行签名或使其成为系统应用程序。

这是一个适合我的应用示例:

@Override
protected void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.activity_main);
   PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
   pm.reboot(null);
}

并添加到清单中:

使用权限 android:name="android.permission.REBOOT"/>

希望对你有帮助

【讨论】:

    猜你喜欢
    • 2013-11-28
    • 2011-08-18
    • 2013-06-12
    • 2015-04-15
    • 2018-05-12
    • 2011-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多