SP源码阅读和其导致ANR原因分析 2022-03-28 accumulation ANR, Android Source Code 11 min read , Words: 2132 背景本文是在看了字节的这篇文章: 剖析 SharedPreference apply 引起的 ANR 问题,发现很多原理不太清楚,特意根据源码总结一下,避免网上的人云亦云 Read More
Java内存分配策略 2022-02-13 Java Interview 16 min read , Words: 3136 java的内存分配策略1、Java 程序运行时的内存分配策略有三种: (1) 静态分配 (2) 栈式分配 (3) 堆式分配 Read More
Android Binder机制分析(三) 2022-02-10 accumulation AIDL, Binder 1 min read , Words: 49 背景上篇文章分析到了Binder机制,同时介绍了Android Framework层系统服务的binder使用。本篇文章分析下Binder的底层实现,以及为什么Binder只需要一次内存拷贝。 Read More
android场景实现AOP编程 2021-12-14 accumulation AGP, AOP, ASM, Transform 6 min read , Words: 1055 我在很早之前就了解过面向切面(AOP)的编程思想,比如AspectJ 实现简单的切面编程,不过都快忘了 :(。本文是想探究AOP在Android环境中的使用,补全Android开发者的技能树。 常见的AOP编程框架有AspectJ、 Cglib,Hibernate 和 Spring 等等,而这些目前流行的AOP框架绝大多数底层实现都是直接或间接地通过 ASM 来实现字节码操作,本文重点就来介绍一下ASM。 Read More
移动view的几种方式总结 2021-08-07 accumulation view scroll 4 min read , Words: 640 移动view的几种方式使用View.layout(l, t, r, b)方法 Assign a size and position to a view and all of its descendants这个方法是用来指定一个view和它所有的子view的尺寸和位置 Read More
自定义gradle插件 2021-07-18 accumulation AGP, gradle 3 min read , Words: 501 gradle和gradlew的区别如果配置好了 gradle 环境变量后,就可以在cmd中使用gradle命令了在cmd中输入: gradle -v Read More
RecyclerView 缓存机制 2021-07-18 accumulation Android Source Code, RecyclerView 16 min read , Words: 3128 RecyclerView 内存性能优越,这得益于它独特的缓存机制 由问题引入 回收的是什么?复用什么? 回收到哪里去?从哪里获得复用? 什么时候回收?什么时候复用? Read More
ANR 总结与分析 2021-06-07 accumulation ANR 22 min read , Words: 4276 ANR 分类Android ANR问题分为三类:Input,Receiver,Service 在我们常见的APP开发中,主要遇到的都是Input超时问题,本文就详细分析下Input超时是如何产生以及如何排查 Read More