我正在尝试列出所有正在运行的应用程序,但我不知道为什么我做不到。
当我尝试运行以下命令时,我只返回了我的应用程序。
List<ActivityManager.RunningAppProcessInfo> listProcesses = manager.getRunningAppProcesses();
许多网站告诉我们使用
List<ActivityManager.RunningTaskInfo> alltasks = am.getRunningTasks(Integer.MAX_VALUE);
但也刚刚退回了我的申请
没有 root 有什么可以让所有任务/进程运行吗?
最佳答案
如前所述,从 Android 5 (Lollipop) 开始不再支持 getRunningTasks 和 getRunningAppProcesses
对于较新的Android版本,您需要让用户授予您Apps Usage权限,然后向UsageStatsManager询问在特定时间段内运行的应用程序。
https://developer.android.com/reference/android/app/usage/UsageStatsManager.html
这里有更多详细信息:
这是一个关于如何查询 UsageStatsManager 的示例(致谢 Cole Murray - 发布在上一个链接中)- https://github.com/ColeMurray/UsageStatsSample
关于android - 为什么我无法以编程方式在 Android 中看到所有正在运行的应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37974894/