Zabójca zadań na Androida

Próbuję napisać prostego zabójcę zadań. Wiem, że nie powinienem zabijać zadań w Androidzie, ale chcę spróbować czegoś takiego. Mam następujący kod:

<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>

Moim problemem jest to, że kiedy wykonuję ten kod, najpierw otrzymuję listę wszystkich zadań, to jest OK. Potem widzę w dzienniku kilka linii:

<code>Sending signal. pid: (processId) SIG: 9
</code>

Zakładam, że to sygnał do śmierci. Ale na końcu mojego kodu, gdy wyświetlam wszystkie działające procesy, lista jest taka sama jak poprzednio, żadne zadanie nie zostało zabite. Jakiś pomysł dlaczego? Dziękuję Ci!

questionAnswers(3)

yourAnswerToTheQuestion