2

以下のコードを実行しようとしています。[1] を使用しています: https://github.com/rbochet/Fast-Forward-Rebootこのリンク。

 try {
        Runtime.getRuntime().exec(
                new String[] { "/system/bin/su", "-c", "reboot now" });
    } catch (IOException e) {
        e.printStackTrace();
    }

そして Error W/System.err﹕ java.io.IOException: Error running exec(). コマンド: [/system/bin/su, -c, 今すぐ再起動] 作業ディレクトリ: null 環境: null。

権限

android.permission.WRITE_EXTERNAL_STORAGE
android.permission.READ_EXTERNAL_STORAGE
android.permission.WRITE_INTERNAL_STORAGE
android.permission.READ_INTERNAL_STORAGE
android.permission.REBOOT.         

私はAndroid Studioを使用しています.Android 6.0(APIレベル23)をターゲットにしています。前もって感謝します。

4

2 に答える 2

0
    /**
     * Checks if the device is rooted.
     *
     * @return <code>true</code> if the device is rooted, <code>false</code> otherwise.
     */
    public boolean isRooted() {
        // get from build info
        String buildTags = android.os.Build.TAGS;
        if (buildTags != null && buildTags.contains("test-keys")) {
            return true;
        }
        // check if /system/app/Superuser.apk is present
        try {
            File file = new File("/system/app/Superuser.apk");
            if (file.exists()) {
                return true;
            }
        } catch (Exception exception) {
            // ignore
            exception.printStackTrace();
        }
        String[] commands = {
                "/system/xbin/which su",
                "/system/bin/which su",
                "which su"
        };
        for (String command : commands) {
            try {
                Runtime.getRuntime().exec(command);
                return true;
            } catch (Exception exception) {
                exception.printStackTrace();
            }
        }
        Log.d("message-startUp: ", "RootUtil");
        return false;
    }

デバイスがルート化されていない場合でも、同じエラーが表示されます

于 2016-08-31T08:47:31.147 に答える
0

に置き換え"/system/bin/su"ます"/system/xbin/su"

于 2015-10-02T09:28:57.717 に答える