这是一份全面&详细的Android Framework开发学习源码指南

共 2206字,需浏览 5分钟

 ·

2023-08-26 19:18


我想大部分有“ 如何学习Framework源码 ”这个疑问的,应该大都是应用层开发。

应用层是被Framework层调用执行的,知道自己的代码是怎么被调用的,才能理解程序的本质,理解本质有助于解决遇到的新问题,同时才有更多方法去优化应用层逻辑。 

学习Framework最大的问题,其实是没有应用场景,或者说短期来看成本高,收益底,容易半途而废。

那我们该如何学习呢? 关于如何学习Android Framework开发知识,最近小编有幸在前字节跳动总监手里扒到这份Android framework高级开发笔记,部分知识章节发布到了GitHub已经标星18k了 ,今天就拿出来分享给大家。

本笔记讲解了Framework的主要模块,共442页


7557d24e65c1acdbd3dd4e66498be381.webp

扫描下方二维码立即免费获取



第一章 系统启动流程分析



  • 第一节 Android启动概览


  • 第二节 init.rc解析


  • 第三节 Zygote


  • 第四节 面试题



eede46ea017cdb27476d6ada1b7e07b7.webp


第二章 跨进程通信IPC解析



  • 第一节 Sercice 还可以这么理解


  • 第二节 Binder基础


  • 第三节 Binder应用


  • 第四节 AIDL应用(上)


  • 第五节 AIDL应用(下)


  • 第六节 Messenger原理及应用


  • 第七节 服务端回调


  • 第八节 获取服务(IBinder)


  • 第九节 Binder面试题全解析



cfbe0f7fa9675861955f3527150e679c.webp


第三章 Handler解析



  • 第一节 源码分析


  • 第二节 难点问题


  • 第三节Handler常问面试题



b341c7f2346181228c06a746bc89e271.webp


第四章 AMS 解析



  • 第一节 引言


  • 第二节 Android架构


  • 第三节 通信方式


  • 第四节 系统启动系列


  • 第五节 AMS


  • 第六节 AMS 面试题解析



ee361ba95845b519533a43c7f7a56a2c.webp


第五章 WMS解析



  • 第一节 WMS与activity启动流程


  • 第二节 WMS绘制原理


  • 第三节 WMS角色与实例化过程


  • 第四节 WMS工作原理




6b9a0aa2aff2d3f572dd588fb3d8a1e0.webp


扫描下方二维码立即免费获取



第六章 Surface源码解析



  • 创建流程及软硬件绘制


  • 双缓冲及SurfaceView解析


  • Android图形系统综述



78c3c3b22fe57464e0161667b24b6b94.webp


第七章 基于Android12.0的SurfaceFlinger源码解析



  • 第一节 应用建立和SurfaceFlinger的沟通桥梁


  • 第二节 SurfaceFlinger的启动和消息队列处理机制


  • 第三节 SurfaceFlinger 之 VSync(上)


  • 第四节 SurfaceFlinger之VSync(中)


  • 第五节 SurfaceFlinger之VSync(下)



b839890d9e4d6ccf4c6fcfd204c0276f.webp


第八章 PKMS源码解析



  • PKMS调用方式


  • PKMS启动过程分析


  • APK的扫描


  • APK的安装


  • PKMS之权限扫描


  • 静默安装


  • requestPermissions源码流程解析


  • PKMS面试题



fc60dafb2717a8e2bfa5634c1cccc26a.webp


第九章 InputManagerService源码解析



  • Android Input输入事件处理流程(1)


  • Android Input输入事件处理流程(2)


  • Android Input输入事件处理流程(3)



1cab43649d57d3f297f5c761c700692b.webp


第十章 DisplayManagerService源码解析



  • DisplayManagerService启动


  • DisplayAdapter和DisplayDevice的创建


  • DMS部分亮灭屏流程


  • 亮度调节


  • Proximity Sensor灭屏原理


  • Logical Display和Physical Display配置的更新



0b928ae5a7cc1e3afb70f73aab3f6974.webp




扫描下方二维码立即免费获取




Android开发之路并不简单,我们要学的东西不仅仅只有表面的技术,还要深入底层,弄明白下面的原理,只有这样,我们才能够提高自己的竞争力,在当今这个竞争激烈的世界里立足,才能突破瓶颈走的更长更远! 千里之行始于足下,愿你我共勉。



PS :我们还在8月22日~23日特邀了腾讯课堂Avlin和Lance老师为大家带来《如何解决应用与Framework开发不得不重视的内存性能》免费直播课,让大家深入内存泄漏自动捕获方案和线上APM内存数据Native底层转储优化方案实战演练。









浏览 108
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报