- 浏览: 173301 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
dupeng41255:
问一下,。com的接口 是不是需要注册啊?我调用的时候返回说需 ...
java实现whois域名查询 -
feiyu86:
比喻的非常贴切。。
synchronized方法和代码块的使用 -
罡风笑:
贴结果:CBH 蜀汉 绝顶 刀客
开心一下 你古代的身份。超级好玩~
RunningTaskInfo
范例说明
Android操作系统并没有提供任务管理器程序,无从得知后台有哪些程序正在运行。本范例是通过ActivityManager.getRunningTasks方法来取得正在运行中的工作程序,并使用ListView将之罗列出来。
这里说的"正在运行"是指单击"按钮"时所获取到的信息,如果放在ListView里的工作已经结束,或者被操作系统回收(Garbage Collection,GC),此时是不会更新运行列表的,而由于没有其他运行中工作的访问权限,因此也不能通过本程序关闭。
在以下范例的Layout里,设计一个TextView、一个ListView以及一个按钮,通过按钮单击的事件,同时向系统ActivityManager取出正在运行的Activity Tasks。
运行结果(见图5-23)
图5-23 任务管理器正在运行的程序,包含了正在运行的Activity |
范例程序
- src/irdc.ex05_21/EX05_21.java
在访问系统Activity的运行工作时,必须指定要取得的工作数量,因为资源有限,所以在类成员中设置了最多取出30笔的Activity运行工作。
单击按钮之后,便会使得私有类成员mActivityManager重新向系统取得ACTIVITY_SERVICE服务(getSystemService(ACTIVITY_SERVICE);),接着创建List<ActivityManager.RunningTaskInfo>对象,并在构建时,使用getRunningTasks()方法获取正在后台运行中的Activity。
由于取出的对象为List对象,因此程序通过for循环的方式,取出其ActivityManager. RunningTaskInfo里的属性,如Activity的名称(baseActivity.getClassName())及ID(Activity- Manager.RunningTaskInfo.id)。
/* import程序略 */ import android.app.ActivityManager; import android.widget.ListView; public class EX05_21 extends Activity { private Button mButton01; private ListView mListView01; private ArrayAdapter<String> aryAdapter1; private ArrayList<String> arylistTask; /* 类成员设置取回最多几笔的Task数量 */ private int intGetTastCounter = 30; /* 类成员ActivityManager对象 */ private ActivityManager mActivityManager; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mButton01 = (Button) findViewById(R.id.myButton1); mListView01 = (ListView) findViewById(R.id.myListView1); /* 单击按钮取得正在后台运行的任务程序 */ mButton01.setOnClickListener(new Button.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub try { /* ActivityManager对象向系统取得ACTIVITY_SERVICE */ mActivityManager = (ActivityManager) EX05_21.this .getSystemService(ACTIVITY_SERVICE); arylistTask = new ArrayList<String>(); /* 以getRunningTasks方法取回正在运行中的程序TaskInfo */ List<ActivityManager.RunningTaskInfo> mRunningTasks = mActivityManager .getRunningTasks(intGetTastCounter); int i = 1; /* 以循环及baseActivity方式取得任务名称与ID */ for (ActivityManager.RunningTaskInfo amTask : mRunningTasks) { /* baseActivity.getClassName取出运行任务名称 */ arylistTask.add("" + (i++) + ": " + amTask.baseActivity.getClassName() + "(ID=" + amTask.id + ")"); } aryAdapter1 = new ArrayAdapter<String>(EX05_21.this, R.layout.simple_list_item_1, arylistTask); if (aryAdapter1.getCount() == 0) { /* 当没有任何运行的任务,则提示信息 */ mMakeTextToast(getResources().getText( R.string.str_err_no_running_task).toString(), true); } else { /* 发现后台运行的任务程序,以ListView Widget条列呈现 */ mListView01.setAdapter(aryAdapter1); } } catch (SecurityException e) { /* 当无GET_TASKS权限时(SecurityException异常)提示信息 */ mMakeTextToast(getResources().getText( R.string.str_err_permission).toString(), true); } } }); /* 当User在运行任务选择时的事件处理 */ mListView01 .setOnItemSelectedListener(new ListView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View v, int id, long arg3) { // TODO Auto-generated method stub /* 由于将运行任务以数组存放,故以id取出数组元素名称 */ mMakeTextToast(arylistTask.get(id).toString(), false); } @Override public void onNothingSelected(AdapterView<?> arg0) { // TODO Auto-generated method stub } }); /* 当User在运行任务上单击时的事件处理 */ mListView01.setOnItemClickListener(new ListView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View v, int id, long arg3) { // TODO Auto-generated method stub /* 由于将运行任务以数组存放,故以id取出数组元素名称 */ mMakeTextToast(arylistTask.get(id).toString(), false); } }); } public void mMakeTextToast(String str, boolean isLong) { if (isLong == true) { Toast.makeText(EX05_21.this, str, Toast.LENGTH_LONG).show(); } else { Toast.makeText(EX05_21.this, str, Toast.LENGTH_SHORT).show(); } } }
来自:http://book.51cto.com/art/201007/212202.htm
发表评论
-
Android 属性动画(Property Animation) 完全解析 (下)
2016-02-22 14:49 1033版权声明:本文为博主原创文章,未经博主允许不得转载。 ... -
Android 属性动画(Property Animation) 完全解析 (上)
2016-02-22 14:47 701版权声明:本文为博主原创文章,未经博主允许不得转载。 ... -
Windows系统中Maven的安装与配置以及m2eclipse插件的安装
2014-04-30 16:06 1168近期公司的一个项目需要用maven搭建,所以把maven的环 ... -
Gallery自动循环滚动,手动滚动的平滑切换及存在问题
2012-11-06 10:51 3510来自:http://blog.csdn.net/lenghun ... -
Gallery自动循环滚动,手动滚动的平滑切换及存在问题
2012-11-06 10:34 7来自:http://blog.csdn.net/lenghun ... -
VLC for Android on Linux
2012-07-12 14:28 1915来自:http://wiki.videolan.org/And ... -
Android模拟器对应电脑键盘快捷键
2012-01-10 00:01 1375Home键(小房子键) 在键盘上映射的是home键。 ... -
Android的gallery实现无限循环和降低选择频率
2011-07-20 17:55 1468gallery是一个很好用的控 ... -
Android编译问题:Only 64-bit build environments are supported beyond froyo/2.2
2011-03-07 19:01 1111在使用: $ repo init -u git://An ... -
任务管理器正在运行的程序(2)
2010-12-23 14:36 1689RunningTaskInfo AndroidManifes ... -
android 监听文件和目录的创建删除移动等事件
2010-11-11 15:14 1742android.os下的FileObserver类是一个 ... -
animation知识学习
2010-10-22 14:07 2015LinearInterpolator 变化率是个常数,即 f ... -
Android 页面切换动画效果
2010-10-18 12:54 4139在Android 2.0之后有了ove ... -
android自适应屏幕方向和大小
2010-09-27 16:51 1728一:不同的layoutAndroid手机屏幕大小不一,有 ... -
Android图片处理的的一些方法
2010-08-02 18:54 63111.图片加载方法,方便用户加载图片 /**** 加载本地图片 ... -
OMA-SyncML-DataSyncProtocol-V1_1_2-20030612-A
2010-07-02 12:12 643手机联系人等信息同步中使用 -
Android取得屏幕分辨率
2010-05-31 10:32 923WindowManager windowManager = g ... -
Content Providers
2010-03-04 23:21 1174来源:http://developer.andro ... -
Android基础 : Android Content Provider[转]
2010-03-02 23:09 1064Android应用程序可以使用文件或SqlLite数据库来存储 ... -
Android 联系人开发- 保存联系人
2010-03-02 22:46 4726最近在开发android平台的联系人部分,有点总结和大家分享一 ...
相关推荐
网吧、学校等公共场合的计算机,我们不希望用户使用任务管理器乱杀进程,但是我们又不能不让用户使用任务管理器,这个程序就是专为解决这个问题而编写的。 程序比较简单,所以没有提供卸载程序,如果安装后不想用了...
MFC实现的任务管理器程序,程序编写规范,可直接运行,适合作为MFC入门到精通的练手项目。
这段时间研发了一个任务计划管理程序V1(绿色免安装),供各位新老客户下载使用. 软件语言:简体中文 软件类型:任务计划管理程序V1/绿色版 运行环境:Win2003, WinXP, Win2000, NT, WinME + .Net Frawork 2.0 软件...
1.任务管理器功能:可以查看系统正在运行的有哪些程序,这些程序分别占用了多少资源; 2.查看程序详细信息:触点程序名称打开菜单,可查看该程序的详细信息 3.卸载程序:不仅能够卸载你自己安装的程序,还能够卸载你...
android 任务管理器,任务列表,正在运行程序,卸载程序。
Windows任务管理器提供了有关计算机性能的信息,并显示了计算机上所运行的程序和进程的详细信息;如果连接到网络,那么还可以查看网络状态并迅速了解网络是如何工作的。它的用户界面提供了文件、选项、查看、窗口、...
1. 任务管理 对后台运行的进程进行管理,可对某个进程进行查看程序详情、杀死进程、打开程序操作 2. 应用管理 对手机全部应用进行管理 3. 系统资源监控 可以实时查看手机运行时的CPU利用率、内存利用率、已使用内存...
通过任务管理器用户可以方便的查看当前运行的程序、进程、用户、网络连接以及系统对内存和CPU的资源占用,并可以强制结束某些程序和进程,此外还可以监控系统资源的使用状况。 Windows 任务管理器首次出现是在1998年...
简单的任务管理器应用程序java源码 简单的任务管理器应用程序是一个 Java 项目。它允许用户管理他们的日常任务报告。这是之前任务应用程序的更新版本。要运行该项目,您将需要 Eclipse IDE。因此,在运行项目之前,...
在功能方面,该任务管理器提供实时进程列表,展示当前系统中所有正在运行的进程及其详细信息,如进程名、PID、内存占用等。用户可以通过搜索框快速查找特定进程。此外,它还支持一键结束无用进程,释放系统资源,...
禁止通过任务管理器来终止进程运行,你会发现打开任务管理器后,结束进程 的功能没有了
第一个不同的就是系统托盘图标,由原来的方框改成了扇形雷达式的动态图标,打开的任务管理器窗口布局和旧版完全相同,只是它的程序图标也更换了(如图所示); <br> 4.现在切换到“进程”标签页,接着点击菜单...
React.js的友好应用程序管理器和任务运行器。.zip,React.js的友好应用程序管理器和任务运行器
相信朋友们对Windows XP的任务管理器并不陌生,我们可以用它来查看正在运行的程序的状态,终止已停止响应的程序或进程,也可以查看反映CPU和内存使用情况的图形和数据。下面笔者介绍一些使用技巧供读者参考。 1....
获取程序或进程的运行内存大小,与Windows任务管理器一致,注意程序运行时,需要区分是否进程名后的vshost ,CSDN不能自己设置下载积分了,大家见谅
可枚举Windows中正在运行的所有程序,需要的同学可以直接使用。
安全任务管理器 以通俗易懂的方式显示计算机上运行的程序和进程的信息。从而提高Windows任务管理器里的每一个进程...
react-Guppy一个Reactjs友好的应用程序管理器和任务运行器
节能宝任务管理器,可以帮您结束程序,卸载程序,加快手机运行速度,节约电量,其特点包括: 特点一:一键通,在运行中程序列表中,按列表中一行,会弹出操作列表,通过它可以结束、卸载或切换到所选程序。 特点二:...