拜托,都2023年了,再不懂Android Framework底层原理,真要被淘汰了

294 阅读3分钟

前言

从事Android开发的都知道,目前市面上各类跨平台技术的诞生,严重打击着Android市场,越来越多的Android开发者不再去做单纯移动应用开发,反观系统开发,由于其复杂的逻辑,形成其独有的核心竞争力,也导致企业招聘Android Framework开发薪资居高不下。

且现在很多企业面试中都会问道Android Frmaework相关内容,是因为Android Framework是Android开发的基础,对于开发人员来说,熟悉Android Framework和系统架构是非常重要的,因此,如果求职者能够熟练回答Android Framework相关的问题,就说明他们具备了丰富的实际开发经验,这正是企业所看重的地方。

如何学习Android Framewrok呢?

目前市面上Android Framework的资料都相对成熟了,但很多人都不知道去哪里找,这里就分享里就分享一份腾讯大佬整理Android Framework源码解读,相信能很好的帮助你从项目的整体架构中,学会组织代码的方法,或者一些架构的思维。

详细VX关注公众号: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配置的更新

图片

结语

由于 Framework层代码量巨大,涉及到的逻辑线也非常多,经常容易看完后面的,忘记前面的,因此,要记得看完一部分及时总结。总结可以是一个流程图、一篇文章,或者任何你认为合适的方式,一来可以加深记忆,二来可以复习和会刊。