Android exec 執行指令碼檔案例子
阿新 • • 發佈:2019-02-03
package weijing.myself; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import android.app.Activity; import android.app.IntentService; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.TextView; public class AndroidExecActivity extends Activity { TextView text; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); text = (TextView) findViewById(R.id.text); Button btn_ls = (Button) findViewById(R.id.btn_ls); btn_ls.setOnClickListener(new OnClickListener() { public void onClick(View v) { do_exec("cat /data/setip/init.usblpmod.sh"); } }); Button btn_cat = (Button) findViewById(R.id.btn_cat); btn_cat.setOnClickListener(new OnClickListener() { public void onClick(View v) { // do_exec("insmod /system/lib/modules/3.0.8-android-x86-tegav2+/kernel/drivers/usb/class/usblp3.ko"); //System.SystemProperties.set("ctl.start", "ifconfig_test"); System.setProperty("persist.seriver.usblp_test.enable", "1"); String ret = System.getProperty("persist.seriver.usblp_test.enable", ""); System.out.println("服務執行成功!!!!!!!!!!!" +ret); if(ret != null && ret.equals("stopped")) { System.out.println("服務執行成功!!!!!!!!!!!"); } } }); Button btn_rm = (Button) findViewById(R.id.btn_rm); btn_rm.setOnClickListener(new OnClickListener() { public void onClick(View v) { do_exec("start usblp_test"); System.out.println("服務執行成功!!!!!!!!!!!"); // System.setProperty("ctl.start", "usblp_test"); } }); Button btn_sh = (Button) findViewById(R.id.btn_sh); btn_sh.setOnClickListener(new OnClickListener() { public void onClick(View v) { do_exec("/system/bin/sh /mnt/sdcard/test.sh 123"); } }); } private String do_exec(String cmd) { String s = "/n"; try { Process p = Runtime.getRuntime().exec(cmd); BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream())); String line = null; while ((line = in.readLine()) != null) { s += line + "/n"; } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } text.setText(s); return cmd; } }