本书内容

我们将日常工作中优化的案例按不同的纬度划分总结,总计有六个专题方向和最后一个自研的随身调测工具GT。六个专题研究方向分别是:内存、电量、流畅度、导航、网络优化和应用安装包瘦身。每个专题对应一章的内容,通篇都有案例说明,重点在讲述问题解决的思路,以及过程中碰到的问题,同时也介绍了移动应用测试的方法等。下面针对每个章节做一下基本的介绍,读者可以通过介绍了解该章讲述的基本内容。

第1章是内存篇,介绍了各种内存使用情况分析的方法和一些优化技巧。使读者能够准确地了解应用内存的消耗情况,找出存在的内存问题,并在开发过程中尽量节约使用内存。

第2章是电量篇,本章从app层面到rom层面,从硬件测试方法到软件测试方法,结合多个案例从多方面介绍电量测试的切入点和测试方法以及测试原理。介绍了基本的硬件测试方法;介绍了GT、PowerStat、Battery Historian等软件测试方法;以及一种通过大数据去分析用户异常耗电场进而景制定优化策略的测试思路;总结了一些在功耗测试中的优化经验。

第3章是流畅度篇,介绍了android流畅度的测试和优化方法。一开始先介绍评测APP流畅度的方法,结合我们实际的测试经验,阐述FPS在流畅度测试中的不足之处,然后针对FPS的不足,讨论我们如何对测试方法进行改进,从而使得我们的测试方法能够准确地反映出当前APP的流畅度情况。接着结合具体的案例,阐述我们如何对Android APP的流畅度进行测试以及优化。最后总结我们在实践中的流畅度优化方法,这些方法针对Android大部分的APP都具有通用性。

第4章是导航篇,介绍了路线规划,语音播报这两个导航中最重要模块的测试方法和经验。导航类评测的难点在于,case无穷尽;单看自家产品的结果很难给出优劣的评价;人工评测费时费力,达不到足够的量。我们通过后台日志筛选了用户访问量大的case,作为评测的case,以有限的量尽可能覆盖更多的用户。利用多个产品进行对比,更容易发现产品的好坏。我们还提出了几种自动化评测的方案,提高了评测效率,也提升了评测的量。

第5章是网络篇,重点介绍了我们团队网络优化的两个案例。一个是提升上传速度和成功率的“鱼翅项目”,重点讲解了在移动网络环境下如何根据一次次的实验结果,来一步步改进优化算法,最终提炼出了能应对网络质量瞬息万变的鱼翅算法;另一个是某产品流量优化项目,重点讲解了流量测试方法、自动化测试的经验以及提炼出的流量优化的通用方法。在两个案例中都详细分享了我们解决问题的思路,相信这些思考问题的方法能给大家在网络优化以及其他方面深入开展工作带来一些启发。

第6章是应用安装包瘦身篇,结合一个瘦身实际案例介绍了当前常用的瘦身方法、瘦身工具以及瘦身过程中的技巧。

第7章是工具篇,通过前面章节介绍的测试探索与实践,我们已经积累了比较丰富的测试经验,但在实践时经常发现,市面上很难找到能够满足特点测试需求或提高测试效率的工具来辅助测试活动,所以我们就需要自己动手来实现这样的工具。像我们团队开发的可以公开的工具目前有APT、GT、PowerStats,不同的工具适用于不同的测试场景。各有不同的使用限制,其中以GT的适用性最广。本章将以GT为例,先讨论开发测试工具的初心:即“什么时候是开发一个工具的恰当时机?”“我们需要解决什么样的问题?”“我们如何决定工具的形态?”这三个问题,然后对GT的基础能力在实际调测活动中起到的作用进行简要的论证。