前言:为什么要学Android Framework
大家都知道,framwork就是类库,不包括开发工具。它是一个语言开发软件,提供了软件开发的框架,使开发更具工程性、简便性和稳定性,它广泛地应用在各个领域。像掉帧监控,函数插装,慢函数检测,ANR 监控,启动监控,都需要对 Framework 有比较深入的了解,才能知道怎么去做监控,利用什么机制去监控,函数插桩插到哪里,反射调用该反射哪个类哪个方法哪个属性……
另外 Framework 作为 Android 框架层,为 App 提供了众多 API 去调用 ,但是很多机制都是 Framework 包装好了给 App 来用的,如果不知道这些机制的原理,那么很难去在这基础上做优化。
说起对Framework有多熟悉,我相信还是阿里的大佬们还是有一定的发言权的,所以今天分享的内容,就是Alibaba内部供应的“限量笔记”,真是把Framework的精髓写的淋漓尽致,不得不感叹:不愧是Alibaba的技术官啊,真的服了!
关于这份Framework限量笔记,由于篇幅受限,我只能在文章中展示部分的章节内容和核心截图,如果你需要完整的pdf版本,可以点我的GitHub免费下载。
第一章 深入解析Binder
第一节Binder系列—开篇
1.概述
2.Binder
3.提纲
4.源码目录
image image第二节Binder Driver初探
1.Binder驱动概述
2. Binder核心方法
3.附录
image image第三节Binder Driver再探
1.Binder通信简述
2.Binder通信协议
3.场景总结
image第四节Binder启动ServiceManager
1.概述
2.启动过程
3. 核心工作
4. 总结
image image第五节获取ServiceManager
1. 概述
2.获取ProcessState对象
3.获取BpBinder对象
4.获取BpServiceManager
5.总结
image image第六节注册服务(addService)
1.概述
2. ProcessState
3. 服务注册
4. Binder Driver
5. ServiceManager
6. 总结
image image第七节获取服务(getService)
1.获取服务
2.获取Media服务
3.总结
image image第八节framework层分析
1.概述
2.初始化
3.注册服务
4.获取服务
5.实例
image image第九节如何使用Binder
1.Native层Binder
2.Framework层Binder
image image第十节如何使用AIDL
1.AIDL
2.原理分析
image image第十一节Binder总结
第十二节Binder面试题全解析
image image第二章深入解析Handler消息机制
第一节预热
1.设计Handler 的初衷
2.Handler 提供的一些方法
3.Handler实现原理 - 理论分析
4.Message 源码分析
image image第二节MessageQueue的源码分析
image image第三节Looper的源码分析
第四节handler的源码分析
第五节Handler机制实现原理总结
第六节Handler面试题全解析
image image第三章Dalvik VM进程系统
第一节Android系统启动-综述
1.概述
2.init
3.Zygote
4.system_server
5.app
6.启动日志分析
7.总结
image image第二节Init篇
1.概述
2.信号处理
3.rc文件语法
4.启动服务
5.属性服务
6.总结
image image第三节zygote篇
1. 概述
2.Zygote启动过程
3.进入Java层
4.总结
image image第四节SystemServer上篇
第五节SystemServer下篇
image image第四章深入解析WMS
第五章PackageMS启动
image image由于篇幅原因,由于篇幅受限,我只能在文章中展示部分的章节内容和核心截图,如果你需要完整的pdf版本,可以点我的GitHub免费下载。
网友评论