- 博客(7)
- 收藏
- 关注
原创 Glide源码
活动资源 (Active Resources) - 如果当前对应的图片资源正在展示则认为是正在活动中的资源。内存缓存 (Memory cache) - 图片最近被加载过并仍存在于内存中。资源类型(Resource) - 该图片之前曾被解码、转换并写入过磁盘缓存。数据来源 (Data) - 构建这个图片的资源之前曾被写入过文件缓存。
2024-04-05 17:14:27
379
1
原创 EventBus源码解读
原理是在编译期间生成了index文件,这样我们就不需要在运行时通过反射来查找了,直接通过index文件来查找。另外,通过生成的index文件,我们也可以很清晰的看到我们声明的订阅方法分布情况。订阅者在注册订阅方法中,如果当前订阅方法支持粘性事件,则会去stickyEvents集合中查件是否有对应的粘性事件,如果找到粘性事件,则发送该事件。@Subscribe 方法及其类必须是公共的。@Subscribe 不能在匿名类中使用。事件类必须是公共的。
2024-04-05 16:33:51
199
1
原创 Activity Layout源码分析
Activity:一个Activity是一个应用程序组件,提供一个屏幕,用户可以用来交互为了完成某项任务,例如拨号、拍照、发送email……。View:作为所有图形的基类。ViewGroup:对View继承扩展为视图容器类。Window:它概括了Android窗口的基本属性和基本功能。(抽象类)PhoneWindow:Window的子类。DecorView:界面的根View,PhoneWindow的内部类。
2023-11-19 22:51:56
47
原创 Android Binder原理及应用
性能方面的考虑,只需要1次数据拷贝,统一收口在Binder驱动稳定性,基于C/S架构,Client端有什么需求,直接发送给Server端去完成,架构清晰明朗,Server端与Client端相对独立,稳定性较好,大大优于共享内存安全性,传统IPC没有任何安全措施,完全依赖上层协议来确保,而这个是开放的,Client可以伪造用户信息。可靠的身份标记只应该由IPC机制本身在内核中添加,为每个App分配UID,来确定是哪个app。
2023-11-18 23:15:32
101
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人