随着Android 开发行业的快速发展,市场需求也在不断提升,导致低端Android 开发市场就业大环境不好、行业趋势下滑,使得不少初中级的Android开发开始失业,找不到工作。
为什么这么说?
现在不像2012年——2018年的这段期间,每天应用市场都会有好几个新的App应用上线。而如今应用市场已基本成熟稳定了,不少大厂开始都想打造属于自己的智能生态系统,像小米、OPPO、vivo、京东……等互联网大厂,不惜高薪去挖人才,如:
从上图可以看出该岗位的薪资高达30~60K,之所以这么高的原因是,Android 高端市场人才的短缺所造成的,如图中的熟练AOSP源码、Framework、HAL、Kernel这些要求,很少有人可以满足这些条件。
因为大多数的Android 开发者,基本都是做的业务层面的开发,每天就是写着简单的界面,套用的被人的框架在工作。所以工作过三、五年后,发现技术没有得到半点提升,对Framework 底层这一块还只是停留在表面的了解。
而恰恰 Framework又是 Android中最最核心的框架,有着“万金油”的职称,它可以将你的职场道路变得更长更宽!
像系统开发,车载,音视频、游戏开发、智能设备……等,都与Framework息息相关,只要你把Framework 底层的知识掌握了,哪怕日后想要转行,不做应用开发了,Framework层知识仍能支持你走下去。
如何入手 Android Framework?
首先我们要弄明白学习它的目的是什么?是面试?还是转行?或者是提升核心竞争力?
因为这会一个漫长且痛苦的过程,如果没有足够的动力,你很难坚持下去。
综合上面三个不同的目的,请了Oppo的Android 开发大牛帮忙整理了一个 Android Framework内核的知识体系图,如下:
在针对上面Android Framework内核的知识体系图学习时,针对自己参考的一些学习文章和视频,顺手做了一手核心笔记,将其中的难点、必学点都有记录在册了**《Android Framework 核心点手册》,可参考:https://qr18.cn/AQpN4J
**
《Framework 核心知识点汇总手册》:https://qr18.cn/AQpN4J
Handler 机制实现原理部分:
1.宏观理论分析与Message源码分析
2.MessageQueue的源码分析
3.Looper的源码分析
4.handler的源码分析
5.总结
Binder 原理:
1.学习Binder前必须要了解的知识点
2.ServiceManager中的Binder机制
3.系统服务的注册过程
4.ServiceManager的启动过程
5.系统服务的获取过程
6.Java Binder的初始化
7.Java Binder中系统服务的注册过程
Zygote :
- Android系统的启动过程及Zygote的启动过程
- 应用进程的启动过程
AMS源码分析 :
- Activity生命周期管理
- onActivityResult执行过程
- AMS中Activity栈管理详解
深入PMS源码:
1.PMS的启动过程和执行流程
2.APK的安装和卸载源码分析
3.PMS中intent-filter的匹配架构
WMS:
1.WMS的诞生
2.WMS的重要成员和Window的添加过程
3.Window的删除过程
《Android Framework学习手册》:https://qr18.cn/AQpN4J
- 开机Init 进程
- 开机启动 Zygote 进程
- 开机启动 SystemServer 进程
- Binder 驱动
- AMS 的启动过程
- PMS 的启动过程
- Launcher 的启动过程
- Android 四大组件
- Android 系统服务 - Input 事件的分发过程
- Android 底层渲染 - 屏幕刷新机制源码分析
- Android 源码分析实战