手写解析微信Matrix性能监控日志的工具
1. 前言
2018年12月25日,微信团队自研的APM利器,Matrix正式开源了。
...
Android如何优雅地解决重复Drawable资源
1. 前言
最近鸿洋大神和路遥大佬分别在他们的公众号上发布了关于解决Sha...
聊聊ViewPager2中的缓存和复用机制
1. 前言
众所周知ViewPager2是ViewPager的替代版本。它解决了ViewPager...
android协程是怎么切换线程的
要搞清楚这个问题,我觉得需要搞懂这几个知识点:
Continuation,简单讲可以...
Gradle 编写及整个构建详解
本文不会太具体讲编写Gradle插件中用到的API,只是大致梳理一下如何编写一个Gr...
android RecyclerView的使用总结以及常见问题解决方案
RecyclerView使用常见的问题和需求
RecycleView设置了数据不显示
这个往往...
android RecyclerView的刷新机制
本文会从源码分析两件事 :
adapter.notifyXXX()时RecyclerView的UI刷新的逻辑...
android RecyclerView的基本设计结构
下面这张图是我截取的RecyclerView的Structure:
本文着重看: ViewHolder、...
android RecyclerView的复用机制
RecyclerView的View是在什么时候放入到Recycler中的。以及在Recycler中是如何保...
Android性能优化建议
磁盘
SharedPreferences
我们知道SharedPreferences底层是使用xml文件来实...
应用测速组件
统计应用冷启动时长、页面渲染时长是APM系统不可缺少一个功能。Rabbit中这个功能...
android 应用卡顿监控
如何确定应用发生了卡顿?
根据前面的文章我们知道Choreographer.doFrame()方法...
android 应用流畅度(FPS)监控
流畅度是页面在滑动、渲染等过程中的体验, Android系统要求每一帧都要在16.67ms内...
android Choreographer工作逻辑总结
为了更好的理解使用Choreographer监控App FPS的原理,本文先来梳理一下Choreogra...
Android中的异步消息处理机制
这也是Android中老生常谈的一个话题了,它本身并不是很复杂,可是面试官比较喜欢...
android SurfaceView、TextureView、GLSurfaceView
刚开始看这几个东西把我搞的晕头转向的…. 本文就来理一下它们的绘制原理:
Surf...