您的位置:首页 > 移动开发 > Android开发

android 根据进程名杀死指定、特定进程

2015-03-09 09:45 253 查看
private void killProcess(String killName) {
// 获取一个ActivityManager 对象
ActivityManager activityManager = (ActivityManager) mContext
.getSystemService(Context.ACTIVITY_SERVICE);
// 获取系统中所有正在运行的进程
List<RunningAppProcessInfo> appProcessInfos = activityManager
.getRunningAppProcesses();
// 对系统中所有正在运行的进程进行迭代,如果进程名所要杀死的进程,则Kill掉
for (RunningAppProcessInfo appProcessInfo : appProcessInfos) {
String processName = appProcessInfo.processName;
if (processName.equals(killName)) {
killProcessByPid(appProcessInfo.pid);
}
}
}
/**
* 根据要杀死的进程id执行Shell命令已达到杀死特定进程的效果
* @param pid
*/
private void killProcessByPid(int pid) {
String command = "kill -9 " + pid + "\n";
Runtime runtime = Runtime.getRuntime();
Process proc;
try {
proc = runtime.exec(command);
if (proc.waitFor() != 0) {
System.err.println("exit value = " + proc.exitValue());
}
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (InterruptedException e) {
System.err.println(e);
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: