从应用层深入Framework层,Android Framework 该如何学习?

2022年11月15日22:59:02 科技 1351

对于咱们Android开发来说,一般来说都是干上个几年之后,都得要考虑进阶或者是转行的问题。但老话说转行穷三年,不到万不得已我想大多数人都不会去放弃现在的岗位与薪资

如果你还在干Android并且想要进阶,那么对Framework的了解是必不可少的,从应用层深入向Framework层也是必然的。

Android架构

Android 平台的基础是 Linux 内核。 Android Runtime (ART/Dalvik) 依靠 Linux 内核来执行底层功能,例如线程和低层内存管理等。

而在Android Runtime之上就是我们经常接触的Java API Framework层, 如下图是Android的系统架构图

从应用层深入Framework层,Android Framework 该如何学习? - 天天要闻

为何要学Android Framework?

很多应用层开发者包括我一开始都觉得开发上层应用为什么要了解这些关于系统代码的知识,其实作为应用层开发了解一些Framework层的源码及原理是非常有必要的,我总结大概有如下几点:

  1. 了解系统组件工作机制,有助于我们解决问题,毕竟我们平时用的四大组件都是系统给我们创建好的,了解了系统组件工作机制,至少在看问题日志的调用栈可以更加清晰。
  2. Android作为Linux上一款非常优秀的操作系统,学习Android操作系统,可以提高我们对操作系统在实现上的理解,可以让我们的技术更进一步。

如何学习Framework

上面大致列了Android系统的层级, 这里就要对每个层级所需要的相关知识做如下列举,这些仅仅只是罗列了很少一部分,有时间之后会进行补充,想要学明白这些点都需要花费大家非常多的精力, 但现在很多人迫在眉睫想要学好学会Framework关于如何学习Android Framework开发知识,仍在迷茫的开发们可以参考整理的这份进阶文档《Android Framework 源码开发手册》,今天在这里分享给大家:

获取方法: 关注公众号<Android苦做舟> 领取这些开发文档。

从应用层深入Framework层,Android Framework 该如何学习? - 天天要闻

1.Android高级开发工程师必备基础技能
2.Android性能优化核心知识笔记
3.Android+音视频进阶开发面试题冲刺合集
4.Android 音视频开发入门到实战学习手册
5.Android Framework精编内核解析
6.Flutter实战进阶技术手册
7.近百个Android录播视频+音视频视频dome
8.Android Handler机制解析

1.Framework通信

进程间通信(Binder IPC机制)

  • Linux内存binder基础
  • Binder IPC通信原理
  • 深入Binder驱动
  • Binder面试总结(阿里篇)

从应用层深入Framework层,Android Framework 该如何学习? - 天天要闻

进程内通信(Handler消息机制)

  • Loop消息泵机制
  • Message解析
  • Handler面试分享(鹅厂

从应用层深入Framework层,Android Framework 该如何学习? - 天天要闻

实战企业架构通信

  • LiveData事件机制

2.Framework底层服务

AMS原理

  • SystemServer加载AMS
  • AMS数据结构
  • AMS数据结构
  • Activtiy栈管理
  • 手机开机启动的AMS流程
  • App启动中的AMS流程
  • Activtiy管理
  • AMS面试集合
  • AMS原理实战

从应用层深入Framework层,Android Framework 该如何学习? - 天天要闻

PMS原理

  • Packagelnstaller安装器流程分析
  • PMS源码解读
  • T10级面试PMS总结

从应用层深入Framework层,Android Framework 该如何学习? - 天天要闻

WMS机制

  • WMS内核
  • Window的创建过程
  • 企业级Toast与Window架构体系
  • T10级岗位WMS面试总结

从应用层深入Framework层,Android Framework 该如何学习? - 天天要闻

3.Framework系统资源

ServiceManager原理

  • init.rc文件启动关键服务
  • service_ manager进程入口
  • ServiceManager消息轮训
  • ServiceManager服务存储之svclist链表
  • ServiceManager面试总结

从应用层深入Framework层,Android Framework 该如何学习? - 天天要闻

深入Contxt上下文

  • Context与ApplicationContext
  • Context族谱分析
  • Contextmp与ActivityThread
  • getActivity()与getContext ()内存区别
  • 带你认识不一样的上下文Context

深入Resource资源加载

  • resources.arsc文件
  • ResourcesManager创建Resource
  • LoadedApk与Resource关系

4.Framework事件机制

事件分发机制

  • Android事件处理的三个流程
  • 事件信号从内核到IMS过程
  • IMS如何推送数据给ViewRootimp转入上层
  • Android处理Down事件的责任链模式
  • Android处理Move事件
  • 手写模拟Android事件分发架构

从应用层深入Framework层,Android Framework 该如何学习? - 天天要闻

事件冲突解决万能公式

  • 产生冲突事件分类
  • 产生冲突事件分类
  • 事件冲突优先级
  • 事件冲突模拟实战

5.Framework UI机制

UI绘制原理

  • setContentView加载数据的核心概念
  • ViewRootlmpl的绘制管理
  • Choreographer编舞者
  • 测量机制(onMeasure)
  • 摆放机制(onLayout)
  • T10级面试UI绘制总结

从应用层深入Framework层,Android Framework 该如何学习? - 天天要闻

UI自定义实战

  • RecycleView
  • Webview
  • ViewPager

从应用层深入Framework层,Android Framework 该如何学习? - 天天要闻

获取方法: 关注公众号<Android苦做舟> 领取这些开发文档

从应用层深入Framework层,Android Framework 该如何学习? - 天天要闻

1.Android高级开发工程师必备基础技能
2.Android性能优化核心知识笔记
3.Android+音视频进阶开发面试题冲刺合集
4.Android 音视频开发入门到实战学习手册
5.Android Framework精编内核解析
6.Flutter实战进阶技术手册
7.近百个Android录播视频+音视频视频dome
8.Android Handler机制解析

科技分类资讯推荐

引领科技豪华MPV新风尚 第二代腾势D9西安车展亮相 - 天天要闻

引领科技豪华MPV新风尚 第二代腾势D9西安车展亮相

兼具宜商气度与家用温情的科技豪华旗舰MPV,第二代腾势D9迎来西安地区正式亮相。新车依托全球新能源MPV冠军底蕴,以第二代刀片电池、双阀云辇-C、天神之眼5.0智驾等核心技术全面升级,兼顾商务体面与家庭舒适,为西北高端用户带来一站式全能出行解决方案。
采购禁入!科华数据材料造假被拒门外 - 天天要闻

采购禁入!科华数据材料造假被拒门外

本报(chinatimes.net.cn)记者胡雅文 北京报道这家赶上AI算力风口的公司,因投标材料造假,被相关采购方列入禁入名单两年,其此前提出的复议申请也被正式驳回。相关采购平台近日发布公告,明确驳回科华数据股份有限公司(下称“科华数据”,002335.SZ)此前提交的复议申请。早在一年前,科华数据已被认定在“信息通信枢纽...
快评乐道L80:15万元级买大五座,这波值得冲? - 天天要闻

快评乐道L80:15万元级买大五座,这波值得冲?

日前,乐道L80正式发布并开启预售,其整车购买预售价为24.58万元起,租电购买预售价则低至15.98万元起。面对大型SUV市场“细分再细分”之竞争趋势,这款乐道年度重磅新车都有哪些优势?又能否成为“大五座SUV革新之作”?下面,圈哥就带大家全方位感受。
成都直击凯威德:纯电全尺寸SUV的张扬与大气 - 天天要闻

成都直击凯威德:纯电全尺寸SUV的张扬与大气

4月22日,凯迪拉克以奥斯卡级盛典规格,将上海保利大剧院点亮为璀璨舞台,在品牌代言人倪妮与全场嘉宾的共同见证下,凯迪拉克全尺寸纯电公路旗舰——凯威德耀然上市。新车共推出长续航四驱Pro、高性能四驱Ultra两款配置,官方售价区间为46.88万-50.88万元。