Notex

Archives · All

主页

关于

归档

AndroidAndroid FrameworkView

ViewRootImpl 解析

之前反复提到过的DecorView不是整个View树的根吗?怎么又出来一个看起来像是『根』的东西? 我们看看ViewRootImpl的代码,就能明白Android为什么要添加两个『根』在树上。

Read more
loading..
AndroidAndroid FrameworkView

View 的绘制流程

View的绘制流程View树的绘制流程当 Activity 接收到焦点的时候,它会被请求绘制布局。该请求由 Android Framework 处理。绘制是从根节点开始,对布局树进行 measure 和 draw。整个 View 树的绘图流程在 ViewRoot 类的performTraversals()函数展开,该函数所做的工作可简单概况为是否需要重新计算视图大小(measure)、是否需要重新安置视图的位置(layout)、以及是否需要重绘(draw),流程图如下:

Read more
loading..
Android插件化设计模式

关于插件化

插件化几乎是现在 Android 开发工程师的必备技能之一了。在前几年,Android 的安全机制不是很完善的时候,插件化的确大放异彩了一段时间,但是随着 Android 变得越来越安全,插件化的风头也有所收敛。从最初只支持 Activity 的动态加载发展到可以完全模拟 app 运行时的沙箱系统,插件化的技术也一步步趋于成熟。

Read more
loading..
Android设计模式组件化

关于组件化

随着APP版本不断的迭代,新功能的不断增加,业务也会变的越来越复杂,APP业务模块的数量有可能还会继续增加,而且每个模块的代码也变的越来越多,这样发展下去单一工程下的APP架构势必会影响开发效率,增加项目的维护成本,每个工程师都要熟悉如此之多的代码,将很难进行多人协作开发,而且Android项目在编译代码的时候电脑会非常卡,又因为单一工程下代码耦合严重,每修改一处代码后都要重新编译打包测试,导致非常耗时,最重要的是这样的代码想要做单元测试根本无从下手,所以必须要有更灵活的架构代替过去单一的工程架构。

Read more
123412