设计一个类似Window的任务管理器
来源:互联网 发布:西瓜视频软件下载 编辑:程序博客网 时间:2024/04/29 05:38
Android并没有提供提供任务管理器程序,无从得知后台有哪些在运行。本范例是通过ActivityManager.getRunningTasks方法来取得正在运行中的工作程序,并使用ListView来显示。
具体程序如下:
package com.nmobile.allove.wfp;
import java.util.ArrayList;
import java.util.List;
import android.app.ActivityManager;
import android.app.ListActivity;
import android.app.Service;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
public class GetRunningTaskInfo extends ListActivity implements OnClickListener{
private Button mButton;
ArrayList<String> appTaskList;
ActivityManager mActivityManager;
private int intGetTaskCounter=10;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
this.Init();
mButton.setOnClickListener(this);
}
public void Init()
{
mButton=(Button)this.findViewById(R.id.Button01);
mActivityManager=(ActivityManager) this.getSystemService(Service.ACTIVITY_SERVICE);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch(v.getId())
{
case R.id.Button01:
appTaskList=new ArrayList<String>();
List<ActivityManager.RunningTaskInfo> list=mActivityManager.getRunningTasks(intGetTaskCounter);
int i=1;
for(ActivityManager.RunningTaskInfo task:list)
{
appTaskList.add(""+(i++)+": "+task.baseActivity.getClassName()+"(ID="+task.id+")");
}
if(appTaskList.size()==0)
{
Toast.makeText(this, "appTaskList.size()==0", Toast.LENGTH_SHORT).show();
}
else
{
this.setListAdapter(new MyAdapter());
}
break;
}
}
class Holder
{
TextView mTextView;
}
class MyAdapter extends BaseAdapter
{
LayoutInflater inflater;
Holder mHolder;
@Override
public int getCount() {
// TODO Auto-generated method stub
return appTaskList.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
inflater=LayoutInflater.from(GetRunningTaskInfo.this);
if(convertView==null)
{
convertView=inflater.inflate(R.layout.item, null);
mHolder=new Holder();
mHolder.mTextView=(TextView)convertView.findViewById(R.id.item_TextView01);
convertView.setTag(mHolder);
}
else
{
mHolder=(Holder) convertView.getTag();
}
mHolder.mTextView.setText(appTaskList.get(position));
return convertView;
}
}
}
记得加上访问权限:
android.permission.GET_TASKS
- 设计一个类似Window的任务管理器
- 类似任务管理器的性能图表显示
- Ubuntu中类似任务管理器的东西
- Roller4任务调度管理器设计的bug
- Android任务管理器的设计实现
- C#实现的一个任务管理器
- 推荐一个增强的XP 任务管理器
- 设置window任务管理器是否可用
- A011:Top命令--类似Windows下的任务管理器,监测性能
- 类windows任务管理器设计
- 基于Symbian任务管理器的设计与实现
- atitit.taskService 任务管理器的设计 v1
- 关掉一个用任务管理器关不了的进程
- 关掉一个用任务管理器关不了的进程
- 关掉一个用任务管理器关不了的进程
- 关掉一个用任务管理器关不了的进程
- 一个简单易用的android任务管理器—tractor
- 为什么我的任务管理器只剩下一个框。
- DelphiXE环境认知(第二章 Environment Options)
- 依赖原则
- Android中Activity的Intent大全
- Android中Broadcast的Intent大全
- BW: query分析实例(condition的使用)
- 设计一个类似Window的任务管理器
- DelphiXE环境认知(第三章 Editor Options)
- 计算机安全技术实验
- 六、Oracle初级学习之随机数、随机字符、随机日期
- printf格式控制符的完整格式
- poj 1979 简单的搜索
- 3T的硬盘什么时候上市? 会导制中小容量的硬盘淘汰么?
- ESX server 3 upgrade to 3.5
- 五一期间需要重新仔细研究的几个知识点