PackageMannager是获取应用包信息,ActivityManager是获取正在运行的应用程序信息。

ActivityManager.MemoryInfo

ActivityManager.MemoryInfo  内存信息

availMem 系统可用内存

totalMem 总内存

threshold 低内存阈值

lowMeory 是否低于内存

Debug.MemoryInfo

Debug.MemoryInfo 统计进程下内存信息

RunningAppProcessInfo

RunningAppProcessInfo 运行进程信息

processName 进程名

pid 进程pid

uid 进程uid

pkgList 该进程下所有的包

RunningServiceInfo

RunningServiceInfo 封装运行服务信息

activeSince 第一次被激活时

foreground 服务是否在后台运行

简单的实例代码演示

package com.example.demod32;import androidx.appcompat.app.AppCompatActivity;import android.app.ActivityManager;
import android.content.Context;
import android.os.Bundle;
import android.os.Debug;
import android.widget.ArrayAdapter;
import android.widget.ListView;import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;public class MainActivity extends AppCompatActivity {private List<String> arrays;private ActivityManager mActivityManager;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mActivityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); //获取ActivityMAnnerListView listView = (ListView) findViewById(R.id.listView);ArrayAdapter<String> adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1,setData());listView.setAdapter(adapter);}private List<AMProcessInfo> getRunningProcessInfo(){/*ActivityManager.MemoryInfo: 系统可用内存信息ActivityManager.RecentTaskInfo: 最近的任务信息ActivityManager.RunningAppProcessInfo: 正在运行的进程信息ActivityManager.RunningServiceInfo: 正在运行的服务信息ActivityManager.RunningTaskInfo: 正在运行的任务信息*/List<AMProcessInfo> MAmProcessInfo = new ArrayList<>();List<ActivityManager.RunningAppProcessInfo> appProcessInfos = mActivityManager.getRunningAppProcesses(); //获取正在运行的进程for(int i = 0; i < appProcessInfos.size(); i++){ActivityManager.RunningAppProcessInfo info = appProcessInfos.get(i);int pid = info.pid;int uid = info.uid;String name = info.processName; //进程名int memoryPid[] = new int[]{pid};Debug.MemoryInfo memoryInfos[] = mActivityManager.getProcessMemoryInfo(memoryPid); //用于统计进程在的内存信息int memorySize = memoryInfos[0].getTotalPss();AMProcessInfo processInfo = new AMProcessInfo();processInfo.setPid(pid+"");processInfo.setUid(uid+"");processInfo.setMemorySize(memorySize+"");processInfo.setProcessName(name);MAmProcessInfo.add(processInfo);}return MAmProcessInfo;}/*** 设置数据*/private List<String> setData(){List<String> arrays = new ArrayList<>();List<AMProcessInfo> list = getRunningProcessInfo();for(AMProcessInfo info : list){arrays.add(info.toString());}return arrays;}
}

封装正在运行的程序信息的bean

package com.example.demod32;public class AMProcessInfo {private String pid;//进程pidprivate String uid; //进程uidprivate String memorySize; //内存大小private String processName; //进程名public String getPid() {return pid;}public void setPid(String pid) {this.pid = pid;}public String getUid() {return uid;}public void setUid(String uid) {this.uid = uid;}public String getMemorySize() {return memorySize;}public void setMemorySize(String memorySize) {this.memorySize = memorySize;}public String getProcessName() {return processName;}public void setProcessName(String processName) {this.processName = processName;}@Overridepublic String toString() {return "AMProcessInfo{" +"pid='" + pid + '\'' +", uid='" + uid + '\'' +", memorySize='" + memorySize + '\'' +", processName='" + processName + '\'' +'}';}
}

应用信息获取ActivityManager相关推荐

  1. java爬取验证码图片_JAVA HttpClient实现页面信息抓取(获取图片验证码并传入cookie实现信息获取)...

    JAVA HttpClient实现页面信息抓取(获取图片验证码并传入cookie实现信息获取) 发布时间:2018-05-18 16:41, 浏览次数:632 , 标签: JAVA HttpClien ...

  2. python模块os测试文件是否存在及基础原信息获取

    python模块os测试文件是否存在及基础原信息获取 在自动化测试中,经常需要查找操作文件,比如说查找配置文件(从而读取配置文件的信息),查找测试报告(从而发送测试报告邮件),经常要对大量文件和大量路 ...

  3. Metasploit AFP信息获取模块afp_server_info

    Metasploit AFP信息获取模块afp_server_info AFP服务默认端口为548或者427.通过扫描该端口信息,afp_server_info模块可以获取AFP服务相关信息.这些信息 ...

  4. 【Android工具】更新安卓手机传感器信息获取工具Ampere Castro phyphox,轻松获取硬件数据和状态信息...

    微信关注 "DLGG创客DIY" 设为"星标",重磅干货,第一时间送达. 上次分享过一个安卓手机传感器信息获取工具--Castro(本文下边),这个软件没有充电 ...

  5. windows主机网络信息获取程序设计

    掌握windows系统获取网络信息的各种API函数的功能与调用方法,掌握设计程序显示获取到相关网络信息的方法,掌握网络字节数据与主机字节数据之间的转换.掌握这些API函数调用的错误处理方法. 利用本地 ...

  6. 欢迎报名参加第四届亚洲信息获取暑期学校(ASSIA2019)

    由中国中文信息学会主办,海南大学和ACM SIGIR北京分部协办的第四届亚洲信息获取暑期学校将于2019年7月9日至13日在海南大学国际交流中心举办. ASSIA旨在为信息检索与推荐.自然语言处理等领 ...

  7. 清华大学人工智能研究院成立智能信息获取研究中心

    2019 年 6 月 19 日,清华大学人工智能研究院智能信息获取研究中心成立仪式暨学术交流会在信息科学技术大楼多功能厅举行.清华大学副校长.人工智能研究院管委会主任尤政院士,人工智能研究院院长张钹院 ...

  8. python3 爬虫 requests安装_BOSS直聘招聘信息获取之爬虫工具分析

    点击蓝色"不太灵光的程序员"关注我哟 加个"星标",每天上午 09:30,干货推送! 文中使用的组件库仅限于Python语言,由于最近收到一些同学的留言说,按照 ...

  9. Android获取Linux图像信息,Android系统信息获取 之十三:Linux内核版本信息获取

    Android系统信息获取 之十三:Linux内核版本信息获取 Android系统是基于Linux的,各个Android版本对应的Linux版本不尽相同,我们这里不去追究各个Android对应的Lin ...

  10. axios请求失败,response.data返回的状态码及错误信息获取

    axios请求失败,后端接口返回的状态码及错误信息获取 使用封装的elementUI后台框架,后台框架自定义封装并返回的code码转态(全部的返回数据,如下所示): 浏览器查看:返回的 error 信 ...

最新文章

  1. 2018/5/1-----1987年图灵奖PPT
  2. ThinkPHP 数据库表结构处理类(简单实用)
  3. Pytorch的tensor数据类型
  4. WebView与JavaScript交互
  5. linkedin上看到的CRM团队信息
  6. 服务器自动挂载硬盘,Linux硬盘分区及开机自动挂载
  7. 基于Sql Server 2008的分布式数据库的实践
  8. 腾讯回应QQ读取用户浏览器历史记录
  9. Android Retrofit框架请求复杂json数据
  10. vue组件穿方法_vue组件间通信六种方式(完整版)
  11. 3. laravel 包含头尾文件
  12. 查看JDK版本和安装路径
  13. Aspose.Word 操作word表格的行 插入行 添加行
  14. 小数转化为百分数(保留小数点后一位有效数字)
  15. 探索学习 Vue 组件篇 第二篇 组件类型:非单文件组件
  16. sandboxie游戏不能运行在虚拟环境中如何解决_Mac系统运行“exe”文件最简单的解决办法...
  17. 消防审批时限减了一半
  18. 【Java学习笔记】接收命令行参数输出指定个数的斐波那契数列
  19. 排名:百度小程序 微信 + 支付宝 + 百度 + 头条 商城源码-拓客营销
  20. 【黑马程序员西安中心】我再也不想过温水煮青蛙的生活了

热门文章

  1. windows11恢复ie浏览器的方法教程
  2. 数据库(MySQL)基础快速入门!
  3. python os创建txt文件,python创建txt文件方法详解
  4. iOS 银行卡号识别
  5. Windows下QT配置librdkafka
  6. Lua学习(一):luac、luajit编译与反编译
  7. RINEX格式文件内容解读
  8. math.js api static function
  9. itest听力答案2020_itest听力题库答案
  10. 手动实现直方图匹配(python)