run Shell command via a .sh file - Android Android OS

Android examples for Android OS:Shell Command

Description

run Shell command via a .sh file

Demo Code

/*/*from w w  w . j a v  a2  s. c o m*/
 * DreamNarae (Root) Open Source
 * Colorful Harmony Team- Angeloid Team, inc
 * Copyright 2009-2013 Angeloid Team, inc Licensed under the Apache License
 * Version 2.0 (the "License"); you may not use this file except in compliance with the License. 
 *
 * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
 * Unless required by applicable law or agreed to in writing, software distributed 
 *
 * Under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *
 * See the License for the specific language governing permissions and limitations under the License.
 */
//package com.java2s;

import java.io.DataOutputStream;
import java.io.IOException;

import android.content.Context;

public class Main {
    public final static String SCRIPT_NAME_miracle2 = "your shell command.sh";

    public static boolean instantExec_miracle2(Context context,
            String command) {
        try {
            runSuCommand_miracle2(context, command.toString());
        } catch (Exception e) {
            return false;
        }
        return true;
    }

    public static int runSuCommand_miracle2(Context context, String command)
            throws IOException, InterruptedException {
        return runSuCommandAsync_miracle2(context, command).waitFor();
    }

    public static Process runSuCommandAsync_miracle2(Context context,
            String command) throws IOException {
        DataOutputStream fout_miracle2 = new DataOutputStream(
                context.openFileOutput(SCRIPT_NAME_miracle2, 0));
        fout_miracle2.writeBytes(command);
        fout_miracle2.close();

        String[] args_miracle2 = new String[] {
                "su",
                "-c",
                ". " + context.getFilesDir().getAbsolutePath() + "/"
                        + SCRIPT_NAME_miracle2 };
        Process proc_miracle2 = Runtime.getRuntime().exec(args_miracle2);
        return proc_miracle2;
    }
}

Related Tutorials