2 qq 33455278 qq_33455278 于 2016.03.15 14:13 提问

安卓中进程与包的关系

ActivityManager activityManager = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);
List list = activityManager.getRunningAppProcesses();
if (list != null)
for (int i = 0; i < list.size(); i++) {
ActivityManager.RunningAppProcessInfo apinfo = list.get(i);
String[] pkgList = apinfo.pkgList;
if (apinfo.importance > ActivityManager.RunningAppProcessInfo.IMPORTANCE_SERVICE) {
for (int j = 0; j < pkgList.length; j++) {
activityManager.killBackgroundProcesses(pkgList[j]);
}
}
}
List list = activityManager.getRunningAppProcesses(); 这行代码拿到所有的进程
ActivityManager.RunningAppProcessInfo apinfo = list.get(i);这行拿到该进程的信息
String[] pkgList = apinfo.pkgList; 拿到该进程下所有的包
activityManager.killBackgroundProcesses(pkgList[j]);杀掉包名对应的进程
我的疑惑就是 一个进程(设为A)下面可能有多个包,每个包都有自己关联的进程,既然这样,每个包的进程与A关系是什么,最后把所有包名对应的进程杀完后,进程A怎么办?

2个回答

qq_33455278
qq_33455278   2016.03.15 15:01

还有啊 一个包名对应一个以包名命名的进程,为什么一个进程下可以运行好多个其他的包,希望大牛解答

luochoudan
luochoudan   Ds   Rxr 2016.03.15 15:48

进程是个很大的概念,一个完整的app很可能就只占有了一个进程,它下面有很多包,不足为怪。

qq_33455278
qq_33455278 回复丑旦: 也就是说getrunningappprocess()拿到的是一个app进程 这个进程下有很多包,每个包又分别对应一个进程 是这样吗?那把所有包的进程杀完后,这个app进程也就自动被关掉了?
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!