添加权限
<uses-permission android:name="android.permission.GET_TASKS"></uses-permission>
private ListView myList;
private ActivityManager mActivityManager;
private Button button1;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.running_task);
myList = (ListView) findViewById(R.id.listView1);
button1 = (Button) findViewById(R.id.button1);
button1.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
try {
/* ActivityManager对象守系统取得ACTIVITY_SERVICE */
mActivityManager = (ActivityManager) RunningTask.this
.getSystemService(ACTIVITY_SERVICE);
ArrayList<String> arylistTask = new ArrayList<String>();
int intGetTastCounter = 30;
/* 以getRunningTasks方法取并正在运行中的程序TaskInfo */
List<ActivityManager.RunningTaskInfo> mRunningTasks = mActivityManager
.getRunningTasks(intGetTastCounter);
// List<ActivityManager.RunningServiceInfo> mRunningTasks =
// mActivityManager.getRunningServices(intGetTastCounter);
int i = 1;
/* 以循环及baseActivity方式取得名称与ID */
for (ActivityManager.RunningTaskInfo amTask : mRunningTasks)
// for (ActivityManager.RunningServiceInfo amTask :
// mRunningTasks)
{
arylistTask.add("" + (i++) + ": "
+ amTask.baseActivity.getClassName() + "(ID="
+ amTask.id + ")");
// arylistTask.add("" + (i++) + ": "+ amTask.process +
// "(ID=" + amTask.pid +")");
}
ArrayAdapter<String> aryAdapter1 = new ArrayAdapter<String>(
RunningTask.this, R.layout.list_item2, arylistTask);
if (aryAdapter1.getCount() == 0) {
/* 当没有任何运行的操作,则提示信息 */
Toast.makeText(RunningTask.this, "当前没有进行的任务",
Toast.LENGTH_SHORT);
// getResources().getText(R.string.str_err_no_running_service).toString(),
} else {
/* 发现后台运行程序,以ListView Widget条在出现 */
myList.setAdapter(aryAdapter1);
}
} catch (SecurityException e) {
/* 当无GET_TASKS权限时(SecurityException例?)提示信息 */
Toast.makeText(RunningTask.this, "无GET_TASKS权限",
Toast.LENGTH_SHORT);
}
}
});
}