前言想要实现简单数据的持久化,我们首先会想到的方法肯定是SharedPreferences,有没有思考过这个我们使用了很久的类有什么缺点。get...
故名思议,ThreadLocal翻译就是线程本地,可以理解为只有本地线程才能取到的数据。下面我们看一个例子: 按照我们以前的思路,在线程中将Th...
LRU(Least Recently Used)是一种常见的页面置换算法,在计算中,所有的文件操作都要放在内存中进行,然而计算机内存大小是固定的...
类加载机制 要想了解Tinker热修复的原理我们就必须知道类加载机制。 首先,我们需要知道ClassLoader中的分类,ClassLoader...
介绍 AOP(Aspect Oriented Programming)面向切面编程。通过预编译的方式和运行期间的动态代理实现程序功能的统一维护的...
前言 上一篇我们讲完了gif动图格式,这篇文章我们将以代码的形式实现gif图片在手机屏幕上加载。 新建一个NDK项目,配置相关库、CMakeLi...
上图是一个简单的100x100的gif图片,使用16进制程序打开的数据是: 数据头(Header)数据:47 49 46 38 39 61。AS...
LZW算法(Lempel-Ziv-Welch)又叫“串表压缩算法”就是通过建立一个字符串表,用较短的代码来表示较长的字符串来实现压缩。LZW算法...
前言 ButterKnife又名黄油刀,是一款知名的Andorid框架,通过注解绑定,省去初始化控件等重复工作,简化代码,极大提高工作效率。 使...