Android获取正在运行的进程列表_android processlist_就酱的博客-程序员秘密

技术标签: android  

Android 获取正在运行的进程,下列方法暂时只能获取Android 7 及以下版本

三方库:

implementation 'com.jaredrummler:android-processes:1.1.1'

实现:

private static List<String> getProcessList(Context context) {
        List<String> resultList = new ArrayList<>();
        if (context == null) {
            return resultList;
        }
        List<AndroidAppProcess> processList = AndroidProcesses.getRunningAppProcesses();
        // 遍历运行的程序,并且获取其中的信息
        for (AndroidAppProcess appProcess : processList) {
            resultList.add(appProcess.name);
            Log.e(TAG, "getProcessList : " + appProcess.name + " :" + appProcess.pid);
//            //目前只需要判断进程,后续数据就不处理了
//            ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
//            if (activityManager != null) {
//                // 获取应用程序的内存 信息
//                android.os.Debug.MemoryInfo[] memoryInfos = activityManager.getProcessMemoryInfo(new int[]{appProcess.pid});
//                long memSize = memoryInfos[0].getTotalPrivateDirty() * 1024L;
//                info.setMemSize(memSize);
//            }
//            try {
//                // 获取应用程序信息,进程名视为应用主进程,及包名处理
//                ApplicationInfo applicationInfo = context.getPackageManager().getApplicationInfo(processName, 0);
//                Drawable icon = applicationInfo.loadIcon(context.getPackageManager());
//                info.setIcon(icon);
//                info.setAppName(applicationInfo.loadLabel(context.getPackageManager()).toString());
//
//                if ((applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) == 0) {
//                    // 用户进程
//                    info.setSystem(false);
//                    Log.e(TAG, "getTaskInfos 用户进程");
//                } else {
//                    // 系统进程
//                    info.setSystem(true);
//                    Log.e(TAG, "getTaskInfos 系统进程");
//                }
//            } catch (Exception e) {
//                e.printStackTrace();
//                // 系统内核进程 没有名称
//                info.setAppName(processName);
//                Drawable icon = context.getResources().getDrawable(R.drawable.ic_launcher);
//                info.setIcon(icon);
//            }
        }
        return resultList;
    }

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/jjj11223344/article/details/123782426

智能推荐

docker 安装kafka(快速)_docker拉去kafka_踏实_进取的博客-程序员秘密

下载镜像docker pull wurstmeister/zookeeper docker pull wurstmeister/kafka 启动镜像docker run -d --name zookeeper --publish 2181:2181 --volume /etc/localtime:/etc/localtime zookeeper:latestdocker

fastdfs java token_fastdfs 开启 token 防盗链_迷失的憨批的博客-程序员秘密

环境:fastdfsnginx + ngx_fastdfs_modulephp+fastdfs_php扩展开启token令牌:vi /etc/fdfs/http.conf#开启http.anti_steal.check_token=true#密钥http.anti_steal.secret_key=123456重启nginxphp中,通过fastdfs_http_gen_token()函数生成$t...

Day1:Spring-IoC、DI_weixin_30840253的博客-程序员秘密

springIOC:控制反转普通JAVA程序运行流程:1、HelloWorld.javapublic class HelloWorld{ public void say(){ System.out.println("hello"); } public static void main(String[] args){ ...

Android linux 基础知识总结_阿强的一亩三分地的博客-程序员秘密

<br />来源: ChinaUnix博客  日期: 2009.10.25 08:53 (共有8条评论) 我要评论<br /><br />===================================================<br />linux ,Android基础知识总结<br />1. Android编译系统分析<br />2. 文件系统分析<br />3. 制作交叉工具链<br />4. 软件编译常识<br />5. 设置模块流程分析<br />6.

android imageview显示不全或者gilde加载不全_imageview 显示不全_Allen-shi的博客-程序员秘密

Imageview显示图片无非一是加载本地图片,而是加载网络图片 一,加载本地图片 1.是否设置图片或者父布局大小导致无法完全显示 2.是否设置圆角 3.是否设置padding或者margin *4.使用android:scaleType时,要设置src,设置background不起做用.一般情况下如果是网络加载图片,默认的是...

FSM(状态机)、HFSM(分层状态机)、BT(行为树)的区别_phymat.nico的博客-程序员秘密

游戏人工智能AI中最常听见的就是这三个词拉: FSM这个不用说拉,百度一大堆解释,简单将就是将游戏AI行为分为一个一个的状态,状态与状态之间的过渡通过事件的触发来形成。比如士兵的行为有“巡逻”,“追击敌人”,“攻击敌人”,“逃跑”等行为,响应的事件就有“发现敌人”,“追到敌人”,“敌人逃跑”,“敌人死亡”,“自己血量不足”等。那么可以写成这样一个状态机:1.士兵 “

随便推点

Kernel panic - not syncing: No init found. Try passing init= option to kernel_ToureYaya的博客-程序员秘密

kernel panic - not syncing: No init found.  Try passing init= option to kernel.这类问题很常见,先总体介绍一下解决思路。能出现让人激动的的控制台,那么系统移植已经接近完成;但是不少人在最后一步出现问题。要点如下:1. 在正确的位置烧写正确格式的文件系统映象:2. 内核支持这

Java-Map:LinkedHashMap_物语1995的博客-程序员秘密

LinkedHashMap1.为什么用LinkedHashMap2.LinkedHashMap的底层3.LinkedHashMap的accessOrder字段4. 底层实现5. LRU的实现1.为什么用LinkedHashMapHashMap 的输出顺序与输入顺序不一致LinkedHashMap 的输出顺序是有序的2.LinkedHashMap的底层LinkedHashMap继承了HashMap,实现了Map接口LinkedHashMap可以认为是HashMap+LinkedList,也

Python—实现Excel的最合适列宽(openpyxl)_openpyxl 图标设置参数_chaodaibing的博客-程序员秘密

Python的Pandas模块是处理Excel的利器,尤其是加工保存Excel非常方便,但是唯独想让导出的Excel自动调整列宽或者行高,确实做不到啊。所以必须openpyxl模块助力。这是最简单的实现:from openpyxl import load_workbookwb = load_workbook('test.xlsx')ws = wb[wb.sheetnames[0]] # 打开第一个sheetws.column_dimensions['A'].wid

NYOJ-58最少步数,广搜思想!_广搜的步数_NYIST_TC_LYQ的博客-程序员秘密

最少步数时间限制:3000 ms  |  内存限制:65535 KB难度:4                                                                   ->   Link      这个题深搜广搜都是可以的,迷宫已经给出了,就看怎么做了;一般起点终点确定用广搜求最短路径问题;    广搜就用到队列了,将起点周

共享问题解决_chenryan的博客-程序员秘密

无法访问,没有权限使用网络资源的解决方案,您可能没有权限使用网络资源.请与这台服务器的管理员联系(1)安装NWlink IPX/SPX/NetBIOS Compatible Transport Protocol协议.(2)开启guest账号:右击我的电脑\管理\用户有个guest,双击之去掉"账户已停用"前面的勾.(3)右击我的电脑\属性\计算机名,查看该选项卡中出现的局域网工作组名称

全国各地运营商dns列表(供查询)_w329636271的博客-程序员秘密

DNS列表 省份 城市 中国电信 中国联通 中国移动 教育网 云南 昭通 222.172.200.68 61.166.150.123 221.3.131.11 221.3.131.12 211.139.29.170 202.203.66.3