LruCache使用LinkedHashMap以强引用的方式存储缓存对象,并提供获取、添加和删除方法。 每次访问一个缓存对象,该对象都会被移到队列的头部。 如果添加一个缓存对...
LruCache使用LinkedHashMap以强引用的方式存储缓存对象,并提供获取、添加和删除方法。 每次访问一个缓存对象,该对象都会被移到队列的头部。 如果添加一个缓存对...
前言 首页要了解 Gradle配置多渠道打包,APP马甲包大部分是将应用ICON(应用图标)、Name(名称)、applicationId(应用标识)、Splash(启动图)...
前言 现在市场中加固apk的方式一般有两种:第一种是对源apk整体做一个加固,放到指定位置,运行的时候再解密动态加载。第二种是对so进行加固,在so加载内存的时候进行解密释放...
前言 Android事件分发机制是Android开发者必须了解的基础 网上有大量关于Android事件分发机制的文章,但存在一些问题:内容不全、思路不清晰、无源码分析、简单问...
Android View 虽然不是四大组件,但其并不比四大组件的地位低。而View的核心知识点事件分发机制则是不少刚入门同学的拦路虎。ScrollView嵌套Recycler...
之前写过一篇关于EventBus的文章,大家的反馈还不错(EventBus3.0使用详解),如果你还没有使用过EventBus,可以去那篇文章看看。当时刚接触EventBus...
更新:由于该适配方案越来越多人使用,也有很多人遇到不太理解的问题。所以为了大家更好的使用,我将文章很多内容更新了,老用户可以重新看下整篇文章。主要更新的内容是使用方法跟以前不...
1、导读 .apk文件其实就是一个压缩文件,把文件的后缀改成.zip就可以用windows解压软件解压了。 这是一个apk文件改成zip文件解压后的样子: lib 文件夹里面...
由于公司的业务不断拓展,生产环境的 APK 大小也从我最初进入公司时的 70M 变为了160MB ,在分析了 APK 结构目录之后,常规的压缩方案已经收效甚微了,动态加载第三...
Android 动画在开发中是不可或缺的功能,或者说是界面灵动的添加剂。那你是否总结过 Android 中总共为开发者提供了多少种方式的动画呢?今天就为大家总结归纳一下。 我...
在Activity中,我们都会使用该方法设置自己需要的xml布局,比如: 下面分析一下,自己写的布局,是怎么通过setContentView()来生效的。 首先放一张Andr...
一、引用 1、Git上最火的USB转串口通信2、Android之USB转串口通信3、安卓开发中的USB转串口通讯 二、截图 废话不多说,先上图,micro usb -> us...
Android系统启动流程. 1.当系统引导程序启动Linux内核时, 内核会加载各种数据结构和驱动程序. 有了驱动之后, 开始启动Android系统并加载用户级别的第一个进...
一、写在前面 在开始之前,你需要知道下面几点:有一份编译好的 Android 源码,现在的 AS 基本能满足,动手跟着步骤走,理解更深刻对 Binder 机制有一定的了解本文...
努比亚技术团队原创内容,转载请务必注明出处。 1.前言 从用户手指点击桌面上的应用图标到屏幕上显示出应用主Activity界面而完成应用启动,快的话往往都不需要一秒钟,但是这...
前言 由于花了比较多的时间学习该框架,初步打算分三篇文章去介绍,分别是:使用篇,源码解析篇,以及关键技术解读篇,欢迎关注探讨。WMRouter 目前的困境及想法 由于笔主之前...
这可能是最好的 RxJava 2.x 入门教程系列专栏文章链接:这可能是最好的RxJava 2.x 入门教程(一)[https://www.jianshu.com/p/a93...
介绍ASM ASM是一款基于java字节码层面的代码分析和修改工具。无需提供源代码即可对应用嵌入所需debug代码,用于应用API性能分析。ASM可以直接产生二进制class...
前言 Gradle插件在Android中的应用很广泛,很多字节码插桩方案就用到了这方面的知识,Android官方提供了很多可用的插件,比如apply plugin: 'com...