Android:如何通过我的主板软件重启?

时间:2014-04-23 15:55:50

标签: android multithreading reboot watchdog

我为pcDuino开发了一款Android应用程序(基于Android 4.2)。

在我的应用程序中,有一个Watchdog线程;此线程检查从其他线程收到的消息;如果有任何问题(在另一个线程的特定时间内没有收到消息),则此Watchdog线程必须重新启动该板。

我的应用程序是一项服务,此服务在电路板启动时启动(已完成)。

那么,是否可以通过软件重新启动此板?

1 个答案:

答案 0 :(得分:0)

我正在使用此链接中的以下代码。只要你扎根就行了。另外,如果您的代码中需要此选项, reboot -p 将执行关闭。

How to shutdown an android mobile programatically?

    Process chperm;
    try {
        chperm = Runtime.getRuntime().exec("su");
        DataOutputStream os =
                new DataOutputStream(chperm.getOutputStream());

        os.writeBytes("reboot\n");
        os.flush();

        chperm.waitFor();

    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (InterruptedException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }