学习android内核 -- AmS相关内容记录
来源:互联网 发布:sketch只能在mac上用吗 编辑:程序博客网 时间:2024/06/15 23:07
ActivityManagerService.java (下面简称AmS),WindowManagerService.java,View.java 这三大类被称为Android 内核的三大核心功能。
AmS主要功能:
1.统一调度各应用程序的Activity。
2.内存管理。(Activity的回收)
3.进程管理。(向外提供了查询系统正在运行的进程信息的API)
AmS中定义了几个重要的数据类,分别用来保存进程(Process),活动(Activity),任务(Task)
1.ProcessRecord进程数据类:
a.进程文件信息:该进程的APK文件内部信息。
b.进程的内存状态信息:用于OOM处理;这些信息用来判断是否内存不够。如果不够,则根据内存状况,会回收一些优先级比较低的内存。
c.进程中包含的Activity,Provider.Service的数据集等,都是些list。
2.ActivityRecord数据类:保存每个Activity的信息.(2.3版本前名为HistoryRecord)
a.环境信息:该Activity的工作环境;比如:属于哪个package,所在的进程名称,文件路径,数据路径,图片,主题等,
b:运行状态信息:比如 idle,stop,finishing等,这些变量为boolean类型,这里的不是等同于程序中的oncreate,onstop那些状态
该类也是一个Binder,可以被IPC调用,一般要WmS中调用
3.TaskRecord类:
有三大关键变量:
1.int taskId; 每一个任务对应一个Int标识
2.Intent intent; 记录创建该Task时对应的intent
3.int numActivities; 记录该TASK中的Activity数目
注:该类没有记录Activity的列表,这意味着不能直接通过任务id找到其所包含的activity。
如果想查找则应通过Ams中的ArrayList<ActivityRecord> activities,可通过遍历然后根据ActivityRecord中的TaskRecordtask变量来确定是否属于指定的任务。
- 学习android内核 -- AmS相关内容记录
- AmS内部原理(android内核学习记录)
- Android 内核相关内容总结
- Android 4.4 AMS 学习笔记
- Android KeyguardManager相关内容学习
- android内核剖析学习笔记:AMS(ActivityManagerService)内部原理和工作机制
- Ams 学习
- Android 4.4 AMS 学习笔记(一)
- Android 内核解剖 - AMS(Activity Manager Service)
- android中的Context(android内核学习记录)
- Android屏幕保护KeyguardManager相关内容学习
- Android屏幕保护KeyguardManager相关内容学习
- Android屏幕保护KeyguardManager相关内容学习
- Android屏幕保护KeyguardManager相关内容学习
- Android屏幕保护KeyguardManager相关内容学习
- Android屏幕保护KeyguardManager相关内容学习
- Android屏幕保护KeyguardManager相关内容学习
- Android屏幕保护KeyguardManager相关内容学习
- 程序员面试智力题(四)
- mysql密码修改
- [黑客入门全程图解].吴自容,武新华.等编著.文字版,精确还原
- NoSQL开篇——为什么要使用NoSQL
- 关于电信路由猫、无线路由猫的设置
- 学习android内核 -- AmS相关内容记录
- 系统软件调试的培训大纲
- php有关于路径的问题分析
- memcached分布式和算法
- eclipse常用快捷键
- 国内外各大免费搜索引擎、导航网址提交入口
- 异常处理机制
- 程序员面试智力题(五)
- 感悟、资产和幸福感 from cnblogs