240 发简信
IP属地:上海
  • SharedPreferences原理分析

    前言想要实现简单数据的持久化,我们首先会想到的方法肯定是SharedPreferences,有没有思考过这个我们使用了很久的类有什么缺点。get...

  • ThreadLocal原理解析

    故名思议,ThreadLocal翻译就是线程本地,可以理解为只有本地线程才能取到的数据。下面我们看一个例子: 按照我们以前的思路,在线程中将Th...

  • Resize,w 360,h 240
    LRU算法手写实现

    LRU(Least Recently Used)是一种常见的页面置换算法,在计算中,所有的文件操作都要放在内存中进行,然而计算机内存大小是固定的...

  • Tinker热修复原理与操作

    类加载机制 要想了解Tinker热修复的原理我们就必须知道类加载机制。 首先,我们需要知道ClassLoader中的分类,ClassLoader...

  • AOP设计思想之登录架构设计

    介绍 AOP(Aspect Oriented Programming)面向切面编程。通过预编译的方式和运行期间的动态代理实现程序功能的统一维护的...

  • NDK加载动图(二)之代码解析

    前言 上一篇我们讲完了gif动图格式,这篇文章我们将以代码的形式实现gif图片在手机屏幕上加载。 新建一个NDK项目,配置相关库、CMakeLi...

  • NDK加载动图(一)之gif图片格式解析

    上图是一个简单的100x100的gif图片,使用16进制程序打开的数据是: 数据头(Header)数据:47 49 46 38 39 61。AS...

  • Resize,w 360,h 240
    LZW压缩与解压算法

    LZW算法(Lempel-Ziv-Welch)又叫“串表压缩算法”就是通过建立一个字符串表,用较短的代码来表示较长的字符串来实现压缩。LZW算法...

  • ButterKnife原理分析

    前言 ButterKnife又名黄油刀,是一款知名的Andorid框架,通过注解绑定,省去初始化控件等重复工作,简化代码,极大提高工作效率。 使...