Android-убийца задач
Я пытаюсь написать простую задачу убийцы. Я знаю, что не должен убивать задачи в Android, но мне не терпится попробовать что-то подобное. У меня есть следующий код:
<code>List<RunningAppProcessInfo> procInfo = activityManager.getRunningAppProcesses(); for (int i = 0; i < procInfo.size(); i++) { Log.v("proces " + i,procInfo.get(i).processName + " pid:" + procInfo.get(i).pid + " importance: " + procInfo.get(i).importance + " reason: " + procInfo.get(i).importanceReasonCode); //First I display all processes into the log } for (int i = 0; i < procInfo.size(); i++) { RunningAppProcessInfo process = procInfo.get(i); int importance = process.importance; int pid = process.pid; String name = process.processName; if (name.equals("manager.main")) { //I dont want to kill this application continue; } if (importance == RunningAppProcessInfo.IMPORTANCE_SERVICE) { //From what I have read about importances at android developers, I asume that I can safely kill everithing except for services, am I right? Log.v("manager","task " + name + " pid: " + pid + " has importance: " + importance + " WILL NOT KILL"); continue; } Log.v("manager","task " + name + " pid: " + pid + " has importance: " + importance + " WILL KILL"); android.os.Process.killProcess(procInfo.get(i).pid); } procInfo = activityManager.getRunningAppProcesses(); //I get a new list with running tasks for (int i = 0; i < procInfo.size(); i++) { Log.v("proces after killings" + i,procInfo.get(i).processName + " pid:" + procInfo.get(i).pid + " importance: " + procInfo.get(i).importance + " reason: " + procInfo.get(i).importanceReasonCode); } </code>
Моя проблема здесь в том, что когда я выполняю этот код, я сначала получаю список всех задач, вот и все. Чем я вижу в журнале несколько строк:
<code>Sending signal. pid: (processId) SIG: 9 </code>
Я полагаю, это сигнал к смерти. Но в конце моего кода, когда я отображаю все запущенные процессы, список остается прежним, ни одна задача не была убита. Есть идеи почему? Спасибо!