0

私はここで同様のタイプの投稿を見ましたが、私はこれを正しく理解していません。私が書いた実行中のプロセスのUIDを取得するために

ActivityManager mgr = (ActivityManager) context.getSystemService(ACTIVITY_SERVICE);
List<RunningAppProcessInfo> processes = mgr.getRunningAppProcesses();
String text = "All Process:\n";
for (int i = 1; i <= processes.size(); i++)
{
    String s;
    s = processes.get(i - 1).processName.toString();
    text += "Process:" + i + s + ":UID:" + android.os.Process.getUidForName(s) + "\n";
}

しかし、ループの完了後、文字列テキストで取得しているのはすべてUID値-1です。マニフェストファイルにGET_TASKS権限を設定しました。UIDを取得できないのはなぜですか。助けてください。プロセスを強制終了するには、このUIDが必要です。

4

2 に答える 2

1

プロセスを強制終了するには、ActivityManagerのkillBackgroundProcessメソッドを使用しました。UIDではなくパッケージ名が必要です。

于 2011-08-16T11:28:02.860 に答える
0

参考のために@seanhodgesによるこの回答を参照してください。
スレッド全体を読むことも役立つかもしれません。

于 2011-05-12T05:53:24.440 に答える