Red de conocimiento informático - Material del sitio web - Cómo interrumpir un programa en ejecución desde la línea de comandos del Shell de Android

Cómo interrumpir un programa en ejecución desde la línea de comandos del Shell de Android

importar java.io.Importar java.net.HttpURLConnection;

importar java.net.MalformedURLException

importar java.net.URL

importar net.gimite.

clase pública MainActivity extiende Actividad {

outputView de TextView privado

Botón privado localRunButton

EditText privado localPathEdit;

Manejador privado = new Handler();

EditText privado urlEdit

Botón de ejecución remota

/** Se llama cuando se crea la actividad por primera vez.

@Override

public void onCreate(Bundle saveInstanceState) {

super.onCreate(savedInstanceState

super.

localPathEdit = (EditText) findViewById(R.id.localPathEdit);

localRunButton = (Button)findViewById(R.id.localRunButton);

localRunButton.setOnClickListener( onLocalRunButtonClick);

}

LocalRunButton.}

OnClickListener privado onLocalRunButtonClick = new OnClickListener() {

onClick público vacío (Ver v ) {

Salida de cadena = exec(localPathEdit.getText().toString());

salida(salida

// prueba {

// p>

/

/ // Proceso proceso = Tiempo de ejecución.

//

// // Proceso proceso = Tiempo de ejecución.

}

// }

}

}

// Ejecutar comandos UNIX .

private String exec(comando de cadena) {

prueba {

Proceso proceso = Runtime.getRuntime().exec(comando);

Lector BufferedReader = nuevo BufferedReader; (

new InputStreamReader(proceso.

int read;

char[] buffer = new char[4096];

salida StringBuffer = new StringBuffer();

mientras (((leer = lector.leer(búfer))) > 0) {

salida.append(búfer, 0, leer <); /p>

p>

}

reader.close();

proceso.waitFor()

devuelve salida.toString(

} catch (IOException e) {

lanzar nueva RuntimeException(e

} catch (InterruptedException e) {

lanzar nueva RuntimeException(e);

}

}

}

descarga privada nula (String urlStr, String localPath) {

pruebe {

URL url = nueva URL(urlStr

HttpURLConnection urlconn = (HttpURLConnection) url.openConnection(); >urlconn.setRequestMethod(" GET");

urlconn.setInstanceFollowRedirects(true);

urlconn.connect (

InputStream en = urlconn.getInputStream ();

FileOutputStream out = nuevo FileOutputStream(localPath);

int read

byte[] buffer = nuevo byte[4096]; >

mientras ((leer = in.

out.write(buffer, 0, read);

}

out.close();

in.close();

urlconn.disconnect();

} catch (MalformedURLException e) {

lanzar nueva RuntimeException (e);

} p>

} catch (IOException e) {

lanzar nueva RuntimeException(e);

}

fuera .close();

in.

}

}

pr

ivate salida vacía (cadena final) {

Proceso ejecutable = new Runnable() {

ejecución pública vacía() {

outputView.setText(str)

}

}

}

}

handler.post(proc); p>

p>

}

}

}