2

別のアキュムレータを備えたロボットにAndroidタブレットをインストールしていますが、そのアキュムレータが放電されたらタブレットの電源を切る必要があります。Androidアプリケーションからそれを行う方法はありますか? 必要に応じてデバイスをルートできます。

UPD - タブレット - Acer Iconia A100、ICS。

UPD2

ここに作業コードがあります

try {
        Process process = new ProcessBuilder()
           .command("/system/bin/su")
           .start();
            OutputStream o =process.getOutputStream();
            o.write("/system/bin/reboot -p\n".getBytes());

    } catch (Exception e) {
        Toast.makeText(getApplicationContext(), "fail!", Toast.LENGTH_LONG).show();
    }
4

1 に答える 1

2

そのようなものはどうですか(ルート化されたデバイスでのみ機能します):

try {
    // it's possible you'd have to provide full path to rebot here (ex. '/system/bin/reboot -p' ??)
    Runtime.getRuntime().exec("reboot -p"); 
} catch( Exception e ) { // pokemon catching

}

完全な作業例 (更新):

try {
    // if that's not working use '/system/bin/su' instead
    Runtime.getRuntime().exec(new String[]{"su", "-c", "reboot -p"}); 

} catch( Exception e ) { }
于 2012-08-09T12:56:39.630 に答える