腾讯Bugly干货分享:Android应用性能评测调优
jopen
9年前
前言
在智能手机App竞争越来越激烈的今天,Android App各项性能如CPU、内存消耗等都是我们在开发测试中需要关注的指标,如何将App打造得更加“优雅”是我们需要不断追求探索的方向,下面我们从内存 和流畅度两个纬度来说说如何对Android App进行评测和调优。
一、内存
内存不是无限使用的,如果内存过大或泄漏会出现OOM(Out Of Memory)、UI不流畅等问题,因此内存也是一个稀缺资源,我们应该保证没有内存泄漏且对不需要使用的内存及时释放。一般内存测试或分析内存问题可以分为下面几步:
- 编译代码
- 选定测试场景(来自于经验&开发)
- 测试场景转换成用例
- 跑起工具Run用例
- 结合代码,分析,分析…
1. 内存测试通用的方法
测试分析内存有以下几种方法:
- DDMS(Heap&Allocation Tracker)
Heap查看堆的分配情况:
主要关注两项数据:
1)Heap Size堆的大小,当资源增加,当前堆的空余空间不够时,系统会增加堆的大小。 2)Allocated堆中已分配的大小,这是应用程序实际占用的内存大小,资源回收后,此项数据会变小。
注:如果进行反复操作,或堆的大小一直增加,则有内存泄漏的隐患。
Allocation Tracker跟踪内存分配情况:
- MAT(Memory Analyzer)
Leak Suspects:内存泄露报告 Top Components:吃货报告 Histogram:每个Class占用内存 Dominator Tree:列出哪些对象占用内存最多以及谁hold住这些对象