getRunningAppProcesses 在 Android L (5.1.1) 上返回空列表 [重复]

2024-05-25

我刚刚测试了我的应用程序和 CM、ATM Android Assistant 等。它们都无法获取正在运行的进程列表,但它们在预操作系统版本上运行良好。那么 Android L (5.1.1) 发生了什么?请帮忙!

am = (ActivityManager) getContext().getSystemService(Context.ACTIVITY_SERVICE);
List<RunningAppProcessInfo> list = am.getRunningAppProcesses();
Log.i(TAG, "LQ::examine list.size()=" + list.size());

我决定改用 getRunningServices!

Du Speed Booster & Power Clean 使用 getRunningServices 代替,也许 getRunningAppProcesses 将来会被弃用。

谢谢谷歌,谢谢字母表。

    Hashtable<String, List<ActivityManager.RunningServiceInfo>> hashtable = new Hashtable<String, List<ActivityManager.RunningServiceInfo>>();
    ActivityManager am = (ActivityManager) getContext().getSystemService(Context.ACTIVITY_SERVICE);
    for (ActivityManager.RunningServiceInfo rsi : am.getRunningServices(Integer.MAX_VALUE)) {
        if (isCanceled()) {
            return;
        }

        String pkgName = rsi.service.getPackageName();
        if (hashtable.get(pkgName) == null) {
            List<ActivityManager.RunningServiceInfo> list = new ArrayList<ActivityManager.RunningServiceInfo>();
            list.add(rsi);
            hashtable.put(pkgName, list);
        } else {
            hashtable.get(pkgName).add(rsi);
        }
    }

    int i = 0;
    int size =  hashtable.size();
    for (Iterator it = hashtable.keySet().iterator(); it.hasNext(); i++) {
        String key = (String) it.next();
        List<ActivityManager.RunningServiceInfo> value = hashtable.get(key);
        ProcessItem item = new ProcessItem(getContext(), value.get(0).pid, key, totalCpu, totalRam);
        if (!whiteList.contains(item.pkgName)) {
            if (!killList.contains(item.pkgName)) {
                killList.add(item.pkgName);
                ramTotal += item.ram;

                if (getListener() != null) {
                    Progress progress = new Progress(this);
                    progress.setArg1(i);
                    progress.setArg2(size);
                    progress.setMsg(item.appName);
                    progress.setObj(item);
                    getListener().onExamining(progress);
                }
            }
        }
    }
    hashtable.clear();
    hashtable = null;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

getRunningAppProcesses 在 Android L (5.1.1) 上返回空列表 [重复] 的相关文章

随机推荐

  • 即插即用 ID (PNPID) 对于每个设备来说都是唯一的吗?

    我使用 Windows 并希望为通过 USB 连接的外部硬盘找到唯一 ID 我发现 PnpID 0010101D400000000 这是独一无二的吗 如果我将其连接到其他 Windows 和 PC 这不会改变吗 还有其他硬盘不能有这个 Pn
  • LINQ to Entities 不支持指定的类型成员“UserName”

    我尝试使用 url 中的 id 参数来显示特定用户的图像 但收到以下错误消息 LINQ to 不支持指定的类型成员 UserName 实体 仅初始值设定项 实体成员和实体导航 支持属性 这是我的操作方法 HttpGet public Act
  • 使用 iText 在横向模式下将 html 转换为 pdf

    我正在尝试使用 iText 将 html 转换为 pdf 这是运行良好的简单代码 ByteArrayOutputStream pdfStream new ByteArrayOutputStream HtmlConverter convert
  • ng-repeat 和 ng-controller 在同一个 DOM 元素上

    我们可以将 ng controller 和 ng repeat 附加到同一个 DOM 元素吗 Fiddle http jsfiddle net ZXE4c 4 这是 HTML table tbody tr td user name td t
  • Linq 表达式将 DataTable 转换为 > 的字典

    我正在尝试转换以下形式的数据表 Key Value 1 A 1 B 1 C 2 X 2 Y 到字典 1 A B C 2 X Y 我使用的 lambda 表达式是 GetTable sql AsEnumerable Select r gt n
  • Flask - 如何从 JSON GET 请求获取参数

    我有一个发出以下 GET 请求的客户端 api GET tasks 5fe7eabd 842e 40d2 849e 409655e0891d 22task 22 22hello 22 22url 22 22 tasks 5fe7eabd 8
  • 难以理解汇编命令“加载有效地址”[重复]

    这个问题在这里已经有答案了 可能的重复 LEA 指令的目的是什么 https stackoverflow com questions 1658294 whats the purpose of the lea instruction LEA指
  • 地理位置邻近搜索

    应用程序中有一个要求 要求在谷歌地图中找出与特定国家和 或城市绑定的所有对象 我们使用谷歌地图 API 预先计算了具有各自纬度和经度的对象并将其存储在数据库中 有时 这些对象在它们可以提供服务的特定服务范围 半径内提供服务 例如现在的情况就
  • 通过向导方法使用内置 ASP.NET MVC 验证

    我正在使用JQuery Steps 插件基本表单示例 http www jquery steps com Examples basic form为了我的巫师 在此示例中 您会注意到他们使用的是 JQuery Validate 插件 该插件与
  • C# 循环位左溢出问题

    我已经尝试让它工作好几天了 我已经阅读了一千个指南和人们的问题 但我仍然找不到正确的方法 我想做的是将这些位向左旋转 这是一个例子 原数 10000001 129我需要 00000011 3 我必须将这些位向左旋转一定的次数 这取决于用户输
  • Smalltalk (Pharo) 如何简单地与用户交互

    我偶然发现了 Smalltalk 并进一步下载了 Pharo 因为它是推荐的 我的第一印象非常积极 我想移植一些我用 C 我的主要语言 编写的简单程序 这样我就可以感受一下 Smalltalk 但是 我意识到我找不到一种简单的方法来获取用户
  • Javascript JSON stringify 没有要包含在数据中的数字索引

    我正在尝试通过 JSON 传递非数字索引值 但没有获取数据 var ConditionArray new Array ConditionArray 0 1 ConditionArray 1 2 ConditionArray 2 3 Cond
  • Java 中的故障安全迭代器和故障快速迭代器是什么

    Java 中有两种类型的迭代器 故障安全迭代器和故障快速迭代器 这是什么意思 它们之间有什么区别 他们之间有什么区别 故障安全 在工程方面 https en wikipedia org wiki Fail safe 表示某事物发生故障但不会
  • 如何在NodeJs中应用Java/Spring的分层架构?

    我已经尝试学习 NodeJS 有一段时间了 所有书籍和教程似乎都遵循类似的代码结构模式 例子 const express require express const app express app set view engine hbs a
  • 提高此 Excel 公式性能的最快方法是什么?

    这是从下面的帖子更进一步的内容 如何克服Excel中公式的最大长度限制 excel的一个bug https stackoverflow com questions 32604740 how to overcome the max lengt
  • Spark 输出:日志式与进度式

    spark submit两个不同集群 都运行 Spark 1 2 上的输出看起来不同 一个是 日志式 即大量消息流 例如 15 04 06 14 53 13 INFO TaskSetManager Starting task 262 0 i
  • SQL Server 如何查看日期是否为当前月份?

    我有一个Ticket Date格式为的列YYYY MM DD HH MI SS 我想检查是否Ticket date是在当前月份 到目前为止我有 Ticket date gt 2015 04 01 and Ticket date lt 201
  • cakephp auth->admin 的登录重定向

    我对 cakePHP 相当陌生 并且已经阅读了蛋糕网站上的所有教程 我正在使用 cake 2 1 构建一个小型示例应用程序 但遇到了问题 基本上 我希望管理员用户在登录时重定向到与普通用户重定向到的页面不同的页面 我确信有一个简单的方法可以
  • React:如何从 Material-UI TextField 组件获取值

    我有一个小型应用程序 其中包含 Form 组件 SubmitButton 组件和我的父组件 App js 当用户单击提交按钮时 我想获取表单组件上 3 个字段的值并将它们传递给我的 App js 组件 我不确定如何使用触发事件onClick
  • getRunningAppProcesses 在 Android L (5.1.1) 上返回空列表 [重复]

    这个问题在这里已经有答案了 我刚刚测试了我的应用程序和 CM ATM Android Assistant 等 它们都无法获取正在运行的进程列表 但它们在预操作系统版本上运行良好 那么 Android L 5 1 1 发生了什么 请帮忙 am