如果有Java层,BpBinder监控也可以理解为BinderProxy的监控。 systemReady frameworks/base/services/core/java...
如果有Java层,BpBinder监控也可以理解为BinderProxy的监控。 systemReady frameworks/base/services/core/java...
Android输入系统分为Java和Native部分,其中初始化是从Java部分开始的,然后再完成Native部分的初始化。代码位置:frameworks/base/serv...
输入事件的源头位于/dev/input/下的设备节点,输入事件的终点是WMS管理的某个窗口。所以输入系统的主要工作是读取设备节点中的原始事件,接着进行加工封装,然后派发给一个...
frameworks/native/services/inputflinger/dispatcher/InputDispatcher.cpp在以上文件中,不管是dispatc...
我选择在Android项目中来学习研究Java注解。从JDK 5开始,Java增加了注解,注解是代码里的特殊标记,这些标记可以在编译、类加载、运行时被读取,并执行相应的处理。...
NativeTombstoneManager NativeTombstoneManager负责进行Java层tombstone写入dropbox。NativeTombston...
这篇文章涉及到的Android源码参考https://www.jianshu.com/p/8c402a0210d9[https://www.jianshu.com/p/8c4...
DropboxRateLimiter用来限制添加到dropbox中的错误的速度,核心函数为shouldRateLimit,核心数据结构为mErrorClusterRecord...
当我们复制一个对象时,浅拷贝和深拷贝是两种不同的方式,它们在复制对象时处理字段引用的方式不同: 浅拷贝(Shallow Copy): 浅拷贝是一种复制对象的方式,在该方式下,...
在Go语言中,Context是一个用于跟踪请求的上下文对象。它可以在多个Goroutine之间传递请求相关的信息,如请求的截止时间、请求的元数据等。Context可以帮助我们...
这篇文章通过Java Binder Parcel的例子,分析Java Parcel与Native Parcel的关系 Java Binder Parcel 示例代码 从代码可...
app MainActivity.java: ContextWrapper.java 这里的mBase是代理模式,其对象是ContextImpl对象。 ContextImpl...
本篇介绍 本篇介绍下Linux的内存管理,用系统角度看内存的寻址和分配机制。 内容介绍 内存管理应该是系统中最难的模块之一了,而且历史也悠久,就先来简单回顾下。 分段和分页 ...
大家都知道,当发生ANR后,App会弹窗提示”应用失去响应,是否重启“,然后系统会dump一份trace文件,存在data/anr目录下。 普通应用如何监控ANR的发生呢? ...
本篇介绍 使用 IDA 可以单步调试 so,即使没有源代码也没关系,这样就可以逆向目标应用的so,分析内部逻辑,本篇就介绍下如何操作。 ida debug so 首先得准备一...