esli's Blog

day day up


  • 首页

  • 分类

  • 归档

  • 标签

  • 关于

  • 搜索

View绘制流程分析

发表于 2018-01-02 | 分类于 AOSP | 阅读次数:
View的绘制流程是Android GUI系统中的关键部分,因为最终view中绘制的内容是要呈现给用户的。本篇基于Android4.4(KitKat)将对view绘制流程做一个全面的分析。 绘制缓冲区 在View绘制流程中首先是需要一块缓冲区提供给应用程序进行内容绘制的, 这个缓冲区在上层以Sur ...
阅读全文 »

Android6.0 动态权限机制

发表于 2017-12-22 | 分类于 AOSP | 阅读次数:
Android6.0以后引入了动态权限机制,一些系统权限的分配需要在app运行中进行分配,而不只是在AndroidManifest中指定。 本篇将针对动态权限的底层分配过程进行分析(基于Android-6.0.1)。 权限分配 我们先看一下请求分配权限的代码 1234567891011121314 ...
阅读全文 »

LeakCanary内存泄漏检测机制原理

发表于 2017-12-21 | 分类于 Android Library | 阅读次数:
LeakCanary是Square公司基于MAT开发的一个用于检测内存泄露的库,它能检测应用存在的内存泄露,并通过界面直观的展示给开发者,极大的方便调试和开发健壮可靠的程序。 内存泄露 内存泄漏(Memory Leak)是指程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的 ...
阅读全文 »

Framework Ethernet模块添加接口

发表于 2017-12-10 | 分类于 AOSP | 阅读次数:
EthernetService 本篇内容基于Android 6.0.1,涉及到的framework类 frameworks\opt\net\ethernet\java\com\android\server\ethernet\EthernetService.java frameworks\opt\n ...
阅读全文 »

View事件分发机制

发表于 2017-11-11 | 分类于 AOSP | 阅读次数:
本篇将介绍输入事件在View树中的分发机制。 事件产生 输入事件是通过InputManager的InputDispatcher分派给WMS的,在创建ViewRootImpl时会建立和WMS的关联,实际上是两个InputChannel,这两个InputChannel是一个socketpair分别负责 ...
阅读全文 »

InputMangerService之Input事件分发流程

发表于 2017-11-01 | 分类于 AOSP | 阅读次数:
InputManagerService负责Android输入设备的事件管理,输入事件是Android应用程序最重要的组成部分,因此我们有必要对整个事件的流程进行分析。我们知道输入事件如触摸事件的分发流程是从view树的根部开始向下传递的,但本篇不对此进行分析,而是从事件发生的源头到该步所做的工作进行 ...
阅读全文 »

OKHttp的缓存策略

发表于 2017-10-27 | 分类于 Android Library | 阅读次数:
OKhttp的缓存是通过CacheInterceptor这个拦截器实现的,它的实现如下: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 ...
阅读全文 »

OkHttp源码分析(二)

发表于 2017-10-20 | 分类于 Android Library | 阅读次数:
OkHttp的请求过程 在上一篇中我们大概了解了OkHttp大体的执行过程,本篇将进一步介绍OkHttp请求的具体过程,这设计到部分拦截器的具体细节。 ####建立连接 关于内置的拦截器将会在其他篇章中分别做介绍,这里只介绍涉及到具体的Http请求过程的拦截器,它们是ConnectIntercep ...
阅读全文 »

OkHttp源码分析(一)

发表于 2017-10-19 | 分类于 Android Library | 阅读次数:
请求方式 OkHttp支持同步和异步的Http请求 同步和异步请求的代码如下: 123456789101112131415161718192021222324252627282930private final static OkHttpClient client = new OkHttpClien ...
阅读全文 »

深入理解ActivityManagerService-ActivityRecord、TaskRecord、ActivityStack的作用及关系

发表于 2017-10-15 | 分类于 AOSP | 阅读次数:
ActivityManagerService ActivityManagerService(简称AMS)是Android系统最核心的Binder服务之一,从名称上看好像它只是Activity的管理者,但实际上AMS管理和维护着系统四大组件(Activity,Service,Broadcast,Co ...
阅读全文 »
1234…6
esli

esli

59 日志
5 分类
7 标签
© 2019 esli