要获取正在运行的任务,首先需要声明一个活动对象管理器(ActivityManager) 所有的活动任务都属于此,然后通过获取服务可以得到所有的活动对象,然后通过活动对象可以得到所有运行的任务和服务,当然要获取服务和任务是使用不同的方法,但是方式是一样的。下面是获取代码:
代码:
1 void getTask() {
2
3 ActivityManager activityManager;
4 try {
5 activityManager = (ActivityManager) this
6 .getSystemService(ACTIVITY_SERVICE);
7
8 arylistTask =
9 new ArrayList<String>();
10
11
12
13 List<ActivityManager.RunningTaskInfo> mRunningTasks =
14
15 activityManager.getRunningTasks(30); //30表示获取的最大数
16
17 /* 以循环及baseActivity方式取得任务名称与ID */
18 for (RunningTaskInfo amTask : mRunningTasks)
19 {
20 Log.d("TaskInfo", amTask.baseActivity.getClassName()+"("+amTask.id+")");
21 }
22
23 //获取服务
24 List<RunningServiceInfo> mserviceTasks =
25
26 activityManager.getRunningServices(30);
27 /* 以循环方式取得任务名称与ID */
28 for (RunningServiceInfo serinfo : mserviceTasks)
29 {
30 Log.d("TaskServerInfo", serinfo.process+"("+serinfo.pid+")");
31 }
32 }
33
34 catch (Exception e)
35
36 {
37
38
39
40 }