APP深度性能测试&性能提升实践
APP遇到的挑战
•激烈竞争的市场
•行为挑剔的用户
•良莠不齐的设备
•频繁的产品更新
•复杂的代码框架
•苛刻的性能指标
怎么做性能测试
MQC的深度性能测试
内存泄露
内存溢出
UI流畅度&卡顿
视频联动:录制APP运行过程视频,精确定位异常界面变化及前后操作
Activity联动:全程监控Activity切换流程,获取Activity启动和退出耗时
卡顿联动:监控Message的处理时长,记录长时间阻塞UI线程的操作
GPU过度绘制
启动分析
严苛模式StrictMode
StrictMode常用于捕获在应用主线程中进行的磁盘读写操作和网络请求;
当应用中有继承了Closeable接口的对象没有关闭的时候,例如文件流等,或者没有使用HTTPS进行网络请求,或者同一个Activity的实例太多,StrictMode都会给出提示。
a.应用在主线程中进行磁盘读写;
b.应用在主线程中进行网络请求;
c.主线程中的某些方法的执行时间比较长;
d.SQL Cursor对象在使用之后没有关闭;
e.继承了Closeable接口的对象在使用之后没有关闭;
f.某一Activity有较多的实例;
g.文件读取接口暴露给外部应用;
h.注册某些对象(广播接收器、观察者、Listener等)后没有取消注册;
i.没有使用加密网络(HTTPS)进行网络数据传输。
原文链接:https://yq.aliyun.com/articles/156149?spm=5176.8091938.0.0.Zz5zDk