android开发中卡顿问题一直是个比较棘手又重要的问题,严重影响了用户的体验感。解决卡顿的问题就要对APP进行优化了,而优化是一个任重而道远的过程,必须在意每一个环节,否则当你想要优化的时候,发现到处都是坑,已经不知道填补哪里了,所以我们必须一点一滴的做起。刚好前段时间,负责APP的性能调优工作,通过使用友盟+u-apm 应用性能监控平台 ,总结了遇到的一些卡顿问题以及分析。最终使得卡顿问题,明显优化,在低端手机上,效果尤为明显。接下来就为大家介绍下android使用不流畅、卡顿分析的原因有哪些。
Android出现使用不流畅,卡顿及ANR,主要原因有三个
1、CPU使用过高:
这个要排除是我们自己的APP还是有别的优先级更高的进程在占用APP,如果是我们自己的app占用CPU过高,那就需要对代码进行研究定位,比如定位操作,长时间的进行位置搜索会持续占占有CPU,还有我们的常驻广播也是会占有CPU。
2、系统内存使用过高:
一个是系统本身内存就小,还有同时打开的应用过多,这些都会占用内存,但是最主要的可能还是我们的代码不够规范从而造成的内存浪费,内存泄漏引起的内存使用过高。比如我们的死循环,递归,对象和变量等没有及时的回收,非常驻广播没有解除注册,长生命周期的持有短生命周期的引用,比如activity中的内部类会持有一个activity的引用,等等这些都有可能造成内存泄漏,内存泄漏过多最终就会导致OOM。所以我们一般会对app的性能进行检测,系统自带的StrictMode,studio的profile