Остановка java.lang.Process
- private void stopProcess(String strMyProcess) {
- String[] output = null;
- try {
- java.lang.Process process = Runtime.getRuntime().exec("ps");//parse output
- process.waitFor();
- output = readFromProcess(process).split("\\n");
- } catch (IOException e) {
- Log.e("Stop process", "Create process or open stream", e);
- } catch (InterruptedException e) {
- }
- for (int i = 0; i < output.length; i++) {
- if (output[i].contains(strMyProcess)) {
- int pid = Integer.parseInt(output[i].split("\\s+")[1]);
- try {
- java.lang.Runtime.getRuntime().exec("kill " + pid);
- } catch (IOException ex) {
- Log.e("Stop process", "Error in kill command", ex);
- }
- }
- }
- }
- private String readFromProcess(java.lang.Process process) {
- String result = "", line = "";
- BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream()));
- try {
- while ((line = br.readLine()) != null) {
- result += (line + "\n");
- }
- } catch (IOException e) {
- Log.e("readFromProcess", "", e);
- }
- return result;
- }
Описание
Останавливает процесс, запущеный от имени приложения, пользователя. Не остановит процесс запущенный с правами root
Параметры
String strMyProcess - имя процесса, который нужно остановить.
Останавливает процесс, запущеный от имени приложения, пользователя. Не остановит процесс запущенный с правами root
Параметры
String strMyProcess - имя процесса, который нужно остановить.