什么是Framework?
Framework 就是它有一套运作的模式 框架中间给你一些空间可以定义你的东西 但还是在框架允许范围内的 基本你的code是被framework的code调用的。相对library就是给你一些便利的方法 utilities 让你去调用。
通俗的讲就是你要成为一个人,就必须经历长大、上学、结婚、生子、为子女操心,享福、入土,整个一个过程,你爸爸或者社会就会给你规划这么一个蓝图,这时候你爸爸或者说这个社会就会提供这么一个框架(framework)给你。
把人换成应用,应用要界面、要mvc、要安全、要事务处理、要aop等等这些东西,framework就会给你规划好,你不用自己做,调用就行了。
从 Framework 的工作内容和特点来看,我们应该花主要的精力学习基础和核心模块,然后在工作中学习涉及到的具体的模块。
系统源码非常的庞大与复杂,在学习过程中一定要有分层与黑盒的思想!
如何学习
这里为帮助大家深度学习Framework背景及它的巨大作用,分享一份,腾讯T9亲自整理的《Android Framework高级源码开发笔记》,包括Android Framework的知识脑图总结和源码学习手册文档!既能够夯实底层原理、源码解析等核心技术点,又能够掌握普通开发者,难以触及的复杂系统问题设计方案。内容涵盖:系统启动流程分析、跨进程通信IPC、Handler、AMS 、WMS、SurFace,SurfaceFlinger、PKMS等共10个章节,章节最后还有相关面试题解析,帮助大家更好地学习Framework,通过面试难关。 由于篇幅原因,本文精选几个章节,详细版电机下方卡牌免费领取
目录
第一章 Android系统启动流程
- 第一节 Android启动概览
- 第二节 init.rc解析
- 第三节 Zygote
- 第四节 面试题
第二章 跨进程通信IPC
- 第一节 Sercice 还可以这么理解
- 第二节 Binder基础
- 第三节 Binder应用
- 第四节 AIDL应用(上)
- 第五节 AIDL应用(下)
- 第六节 Messenger原理及应用
- 第七节 服务端回调
- 第八节 获取服务(IBinder)
- 第九节 Binder面试题全解析
第三章 Handler源码解析
- 第一节 源码分析
- 第二节 难点问题
- 第三节Handler常问面试题
第四章 AMS 源码解析
- 第一节 引言
- 第二节 Android架构
- 第三节 通信方式
- 第四节 系统启动系列
- 第五节 AMS
- 第六节 AMS 面试题解析
第五章 WMS源码解析
- 第一节 WMS与activity启动流程
- 第二节 WMS绘制原理
- 第三节 WMS角色与实例化过程
- 第四节 WMS工作原理
- …
第六章 Surface源码解析
- 第一节 创建流程及软硬件绘制
- 第二节 双缓冲及SurfaceView解析
- 第三节 Android图形系统综述
- ......
第七章 基于Android12.0的SurfaceFlinger源码解析
- 第一节 应用建立和SurfaceFlinger的沟通桥梁
- 第二节 SurfaceFlinger的启动和消息队列处理机制
- 第三节 SurfaceFlinger 之 VSync(上)
- 第四节 SurfaceFlinger之VSync(中)
- 第五节 SurfaceFlinger之VSync(下)
- ......
第八章 PKMS源码解析
- 第一节 PKMS调用方式
- 第二节 PKMS启动过程分析
- 第三节 APK的扫描
- 第四节 APK的安装
- 第五节 PKMS之权限扫描
- 第六节 静默安装
- 第七节 requestPermissons源码流程解析
- 第八节 PKMS面试题
第九章 InputManagerService源码解析
- 第一节 Android Input输入事件处理流程(1)
- 第一节 Android Input输入事件处理流程(2)
- 第一节 Android Input输入事件处理流程(3)
第十章 DisplayManagerService源码解析
- 第一节 DisplayManagerService启动
- 第二节 DisplayAdapter和DisplayDevice的创建
- 第三节 DMS部分亮灭屏流程
- 第四节 亮度调节
- 第五节 Proximity Sensor灭屏原理
- 第六节 Logical Display和Physical Display配置的更新
最后
学出真正的实力。这意味着我们需要投入更多的时间和精力去学习和掌握技能,不只是为了应付眼前的挑战,更要以长期长大为目标。 |