当前位置:首页 » 操作系统 » android任务管理器源码

android任务管理器源码

发布时间: 2023-09-06 01:28:43

A. android关闭应用程序

Android程序有很多Activity,比如说主窗口A,调用了子窗口B,如果在B中直接finish(), 接下里显示的是A。在B中如何关闭整个Android应用程序呢?本人总结了几种比较简单的实现方法。

1. Dalvik VM的本地方法
android.os.Process.killProcess(android.os.Process.myPid()) //获取PID
System.exit(0); //常规java、c#的标准退出法,返回值为0代表正常退出

2. 任务管理器方法
首先要说明该方法运行在Android 1.5 API Level为3以上才可以,同时需要权限
ActivityManager am = (ActivityManager)getSystemService (Context.ACTIVITY_SERVICE);
am.restartPackage(getPackageName());
系统会将,该包下的 ,所有进程,服务,全部杀掉,就可以杀干净了,要注意加上
<uses-permission android:name=\"android.permission.RESTART_PACKAGES\"></uses-permission>

3. 根据Activity的声明周期
我们知道Android的窗口类提供了历史栈,我们可以通过stack的原理来巧妙的实现,这里我们在A窗口打开B窗口时在Intent中直接加入标志 Intent.FLAG_ACTIVITY_CLEAR_TOP,这样开启B时将会清除该进程空间的所有Activity。
在A窗口中使用下面的代码调用B窗口
Intent intent = new Intent();
intent.setClass(Android123.this, CWJ.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); //注意本行的FLAG设置
startActivity(intent);
接下来在B窗口中需要退出时直接使用finish方法即可全部退出。

4.自定义一个Actiivty 栈,道理同上,不过利用一个单例模式的Activity栈来管理所有Activity。

不过建议使用第一种方式来退出应用程序

B. android怎么优化安装耗时

Android系统为了保证手机的稳定性和安全性,默认只能将应用程序安装到手机内存,这就相当于我们在电脑上安装软件时,只能安装到C盘(系统盘)一样。手机内存的空间本来就不大,安装几个应用程序就会被占去大半,所以我们要想办法让应用程序可以安装到存储卡中。这就是Apptosd,简称为App2sd。
虽然从Android2.2开始,系统自身就已经支持App2sd,但在安装软件时仍会默认安装到手机内存,需要我们到“设置-应用程序-管理应用程序”中打开要移动的应用程序详细页,点击其中的“移至SD卡”才能移到存储卡中。
超频加速手机CPU超频提高性能和电脑一样,手机中也有一个CPU,而手机的运行速度很大程度上也取决于CPU的优劣,因此我们经常会在手机论坛中看到一些高手通过对CPU进行超频的方法来改善手机性能,从而达到更加流畅的运行效果,因此,手机超频可以说是提升机器运行速度很可行的办法。
手机超频需要获取ROOT权限,利用软件就可以实现。下载超频工具SetCPU,首次进入SetCPU会让我们选择自动超频或者其他设置。超频这个词听起来似乎很高深,但只要按照一定设置过程操作,很容易就可以实现(注意频率不要一下调太高,超频有风险,超频需谨慎)。超频以后手机的游戏性能会有不少起色,但手机会比之前的发热量有所增加。
关闭后台进程释放手机内存
Android系统支持多任务处理,这也是很多用户放弃iphone选择Android的理由。但多任务带来的副作用就是长时间开机的话,手机会越用越慢,需要重启才能恢复正常。Android虽然自带任务管理器,却只能完成后台任务之间的切换,不能关闭后台程序。Android系统自带任务管理器,想关闭的话,需要进入设置-应用程序-管理应用程序,打开要关闭的软件详细页,点击其中的“强制停止”才行。使用AdvancedTaskManager高级任务管理器就要方便许多。下载安装后运行高级任务管理器,软件默认会显示当前正在后台运行的应用程序列表,每一项的后面都标注了占用的内存大小。
批量结束进程
Android系统很多软件都没有“退出”项,这一点起初让用了多年windows的用户们极为苦恼。而不久前有人表示,Android系统其实不需要关闭后台运行程序,相反这正是Android标榜的优势之一,但是很多用户仍然表示这样做是有效果的。相关人士表示,其实这两种观点都没有错,因为在Android系统自带的任务管理中,我们看到的程序都是刚刚运行过的,或是正在运行的,只要正常退出程序就不会占用过多内存。在后台一直能看到是为了加速下次启动,从而实现提高软件启动速度的目的。而当内存不够用时,系统会自动结束最早使用的程序来释放内存,所以对于一些小程序来说,不用经常手动结束任务就可以流畅运行。

C. android里面我如果用任务管理器关闭一个应用,怎么检测到该应用是否关闭啊

  1. 打开“设置”中的“应用程序”这个选项,点击“正在运行”。若显示的列表中没有那个应用,则该后台程序已被关闭。

  2. 利用第三方系统管理软件进行查看。如ES任务管理器或者是360手机安全卫士中的清理功能均可以看到后台程序是否被关闭。

补充:若是因为后台程序太多导致内存不足,建议先将手机ROOT,然后使用360安全卫士等系统管理软件将自启动应用禁止即可。

D. android任务管理器源代码

android手机代码调式很简单,只要你电脑装了手驱动即可,手机需要做以下几个设置:

1、首先将手机设置为调试模式
方法:设置——应用程序——开发——USB调试,打上勾即可。

2、用数据线连接至电脑,在电脑上安装豌豆荚,此时豌豆荚会帮你安装驱动,安装好后豌豆荚就可以连接上手机了。

3、用adb命令测试是否有装置已连接。
命令:adb devices

看到已经有一个装置了,即为连接的真机
注意:有的人可能提示找不到这个adb命令,这是因为没有将其加入到path环境变量中,或者你进入sdk下的tools目录在运行此命令就不会报错,或者将tools路径加入到环境变量中,当然推荐第二种方法了。

有的时候可能会出现下面的错误:
adb server is out of date. killing...
ADB server didn't ACK *
failed to start daemon *

究其源就是adb server没启动
到stackoverflow上查了一下 经过分析整理如下:
原来adb server 端口绑定失败
继续查看到底是哪个程序给占用了
C:\Users\xxxxxx>netstat -ano | findstr "5037"
TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 4236
TCP 127.0.0.1:5037 127.0.0.1:49422 ESTABLISHED 4236
TCP 127.0.0.1:49422 127.0.0.1:5037 ESTABLISHED 3840

打开任务管理器kill掉PID为4236 的这个进程。ok,至此问题解决了

4、开始在真机上调试
在eclipse中选择Run——Run Configurations,在左边选择好你要调试的工程,然后将右边切换至Target标签下

这有三个选项,如果想连接至真机调试,可选第一个或第二个,这里直接选择第一个,点击Run,等待几秒钟出现以下界面

在这里就看到了真机装置了,选择上面的真机OK即可在真机上运行程序了。

热点内容
创建数据库并设置编码 发布:2025-01-31 11:11:52 浏览:781
搭建数据中心需要的服务器配置 发布:2025-01-31 11:11:44 浏览:590
c语言小数点后四舍五入 发布:2025-01-31 11:10:10 浏览:496
httpslinux 发布:2025-01-31 11:10:09 浏览:828
java4 发布:2025-01-31 11:08:42 浏览:355
什么是密码屏蔽 发布:2025-01-31 11:05:13 浏览:216
一个算法的效率可分为 发布:2025-01-31 11:05:12 浏览:639
win7用户名密码是什么 发布:2025-01-31 10:57:38 浏览:394
网址端口访问 发布:2025-01-31 10:49:30 浏览:512
javaweb代码 发布:2025-01-31 10:37:54 浏览:259