借用下其他博主的话:“
可以从原有的几个方法的API变化及调用返回看出。
- getRunningAppProcesses()在直到4.x, 5.0版本上工作良好(即便API中提示此方法仅用于debugging及编译管理UI之用),但从5.0+开始在一些OEM的系统中调用此方法进行测试会发现方法返回null。
getRunningTasks (int)方法从5.0起正式被标记为deprecated(过时)。5.0+版本上的第三方应用无法在引用此方法。原因在于调用者可能利用此方法获取的私人信息,导致信息泄露。而为了向后兼容,在原有的版本中依然可以获取到至少调用应用本身的task信息及部分其他不敏感的信息。
从上述两个方法的变化可以看出在5.0+之后,想要获取运行进程越来越难。
---------------------
作者:姑苏散人
来源:CSDN
原文:https://blog.csdn.net/sz_chrome/article/details/73825206
版权声明:本文为博主原创文章,转载请附上博文链接!
”
因为谷歌对安全方面做了限制,我在我的小米上用ps命令都无法获取进程信息了(adb shell可以,但用java调用ps命令则无法),遂想从其他方面获取进程信息。
直接上图吧,找到的来源来源有三。
不过得先获取pid
/proc下带数字的文件夹都是当前运行的进程,数字代表进程ID,及pid
这里我们以QQ为例
一、/proc/{pid}/cmdline
这个地方据说有的时候没有信息,不过不要紧,还有剩余两个地方
二、/proc/{pid}/stat
这里数据有点残缺,奇怪
三、/proc/{pid}/status
这里的数据也残缺,emm
如此我们便得到了一个思路:遍历/proc下的进程文件夹,然后读取信息。
当然,这个/proc/{pid}/下还有很多信息,我这里只是获取所有进程ID和进程名而已