Android Framework 开发白嫖笔记

Android Framework 教程1 --如何开始学习Fr

2023-05-29  本文已影响0人  小帝Ele

写在最前

学习Framework有什么意义?

来到2023年,App开发岗位已经越来越少,做App开发的门槛越来越低,但目前市场的产业转型,Android的开发需求都转向了Framework的开发。因此今年开始Android的工程师又会有一大堆人尝试要越过Framework开发这道坎了。

Framework 的学习内容足够庞大,因此日后的工作面试,只要面试官愿意问,肯定能找到让你思考半天的。

Android Framework 涉及的行业相当广泛,可以是手机,汽车,手表,冰箱,微波炉,电视,机顶盒,空调等等设备。

Framework 学习门槛也较高,薪资也比大部分 App 开发岗位高出不少。如果能系统地学习 Framework ,不论从经济上还是个人职业发展上都是非常不错的选择。

这是一张经典的架构图

架构图

Android 系统启动过程

1.由 Boot Loader 引导开机
2.进入 -> Kernel
3.进入 -> Native
4.进入-> Framework
5.进入 -> App

Framework 能开发什么

Framework 怎么学--学习路线分析

1. 基础知识

编程语言方面我们需要掌握:

对一些工具类的语言有一定的了解:

早期 Android 编译系统使用 make 构建,后来逐步使用 Soong 进行替换,Android 的官方博客指出未来会使用 Bazel 来替换掉目前 make 和 Soong 混合的结构,鉴于 Android 代码量庞大,这些替换都是部分的逐步开展的。

对于 Linux 需要掌握三个方面:

2. AOSP 源码学习


了解一下系统源码的管理,掌握 repo 和 gerrit 的使用。

3. AOSP 源码编译系统


在上手了 AOSP 源码后,我们需要知道,我们的系统是怎么编译的,怎么烧录到手机上的。

4. Hal与硬件服务

image.png

5. 基础组件

基础组件就是被使用的比较多的组件,主要包含了:

6. Binder


Binder 是 Android 最核心的基础,整个 Android 都是基于 Binder 搭建的,不夸张的讲,不懂 Binder 就不懂 Android。
Binder 涉及了内核驱动层,C 层,C++ 层,Java 层,涉及知识多,流程复杂,很多人学了一遍有一遍,还是没有掌握。

7. 系统启动过程分析

主要熟悉整个系统启动的流程:



重点掌握:

8. 应用层框架


主要搞懂:

9. 显示系统


在掌握了 Android 显示系统整体框架后,再逐步学习一下内容:

10. Android 输入系统

输入系统主要三个方面来具体学习:

11. 系统应用

对系统应用的开发要有所了解,主要学习一下几个 App:

上一篇 下一篇

猜你喜欢

热点阅读