全网最全Android Framework框架总结,Android如何入门Framework层

每一个Android开发,基本都了解或者学习过系统的知识,一是因为国内软件行业内卷,找工作时“面试造火箭,工作拧螺丝”的局面导致的,另一方面,从客观角度来讲,学习Android系统、Framework 等源代码或者其工作方式也可以提升我们,带来以下好处:

  1. 学习 Android 系统源码可以让开发者更深入地了解系统内部的工作原理和机制,以及各个模块之间的关系。这可以帮助开发者更好地利用系统提供的功能和资源,以及更好地进行调试和优化。
  2. 学习 Android Framework 等源码可以帮助开发者掌握更高级的开发技能,例如自定义控件、优化性能等。这些技能可以让开发者更好地应对复杂的开发需求和问题。
  3. 学习 Android Framework 等源码可以让开发者更好地理解系统的工作原理,以及各个模块之间的交互和协作。这可以帮助开发者更快地定位问题、优化代码,并且提高开发效率。
  4. 如果开发者需要开发定制化的 Android 系统,例如适配特定设备或行业应用,学习 Android 系统源码是必要的。只有深入了解系统的实现原理和机制,才能对系统进行有效的修改和定制。
  5. 涨工资真的很快,赚钱很多,钱多了就可以娶媳妇儿,让家人过上好生活。

但是系统学习不是必须的,只有从事系统定制开发的同学,才有必要学习,其他人完全没必要,没有必要弄明白按下开关发生了什么?点亮屏幕是怎么做的?

普通的开发者更重要的是学习Framework的知识。

部分人的苦恼

对于Framework的学习从未间断过,但是在工作中也没有使用过,并且学了就忘,我就是这部分人的典型代表,不学感觉实现不了人生理想,学了经常怀疑人生。

那为什么是这样呢?

对于不熟悉的知识记忆是很困难的,特别是走马观花的学习方式,因为Framework的学习都是在大神的基础上跟流程的。

那么以下这份来自字节大佬从零开始的Framework学习笔记你不容错过,其内包含包含系统启动流程,Binder,Handler,WMS,AMS等等。每个板块都附有详细的相关代码和其自学理解。

由于篇幅原因,本文精选几个章节

第一章 系统启动流程分析

  • 第一节 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配置的更新

图片

猜你喜欢

转载自blog.csdn.net/Eqiqi/article/details/131307378