-
这一系列底层知识基于Android 6.0.1版本。
-
概述
-
在我还是菜鸟的时候,有很多技术都不明白,也找不到答案,比如,apk是如何安装的?资源是怎么加载的?再比如,AIDL,只听未用过。四大组件也是这个问题,我只用过Activity,其他三个组件不但没有用过,甚至连他们是做什么的,都不是很清楚。
-
之所以是这样,是因为我一直从事的是金融类App开发的工作,这类App基本是由列表和详情组成。所以每天面对的是Activity,写好这两个类页面,再把网络请求框架封装好就够了。绝大多数App开发人员都是如此。但直到接触Android热更新和插件化等技术,我才发现只掌握这些还不足以支撑我四处游荡的灵魂…
-
在网上看了很多文章,但大多都是给ROM开发人员看的,之贴出部分代码,繁多文章,琐碎的代码,让App开发人员看的头大。那该如何吸收这部分知识?
-
可以简单的把Android底层知识分为两种:
-type one:知道概念即可,比如Zygote,其实开发人员不需要了解Zygote的,知道有这么个东西是“云与天地”的就够了,类似的还有SurfaceFlinger、WMS这些概念。
-type two:需要知道内部原理,比如binder,需要了解他的架构模型,Client、server以及ServerManager。它们都扮演者哪些角色?他们是如何分工? -
这个系列将介绍以下概念,掌握这些底层知识,你就可以进军Android插件化大门了。
- binder;
- AIDL ;
- AMS;
- 四大组件的工程原理;
- PMS;
- App 安装过程;
- ClassLoader 以及双亲委托。
【 karle 专栏 】Android 初探底层知识系列
最新推荐文章于 2024-08-11 19:35:45 发布