《Android移动性能实战》从资源类性能中的内存、CPU、磁盘、网络、电量和交互类性能中的流畅度、响应时延,多个性能测评和优化的方向出发。每个方向,都会帮助读者深入浅出地学习必须要懂得的原理和概念,区分众多专项工具使用的场景和对应的使用方法;同时提炼总结不同类型的性能缺陷和对应的排查手段、定位方法和解决方案,透过真实的案例,让大家身临其境地快速学习;提供建立专项性能标准的武器与武器的来源,让读者能快速落地项目并产生成效。《Android移动性能实战》的最后,还会帮助读者从全新的角度学习如何应对专项测评要面对的两个基础问题:UI 自动化测试和竞品测试。
《Android移动性能实战》适合从事移动 App 性能测评和优化的工程师阅读,内容有一定的技术深度和广度,建议读者在阅读《Android移动性能实战》的同时扩展阅读其他经典的技术类书籍。
第 1 部分 资源类性能
第 1 章 磁盘:最容易被忽略的性能洼地 2
1.1 原理 2
1.2 工具集 6
1.3 案例 A:手机 QQ 启动有 10 次重复读写 /proc/cpuinfo 16
1.4 案例 B:对于系统 API,只知其一造成重复写入 18
1.5 案例 C:手机 QQ 启动场景下主线程写文件 19
1.6 案例 D:Object Output Stream 4000 多次的写操作 20
1.7 案例 E:手机 QQ“健康中心”使用的 Buffer 太小 22
1.8 案例 F:手机 QQ 解压文件使用的 Buffer 太小 24
1.9 案例 G:刚创建好表,就做大量的查询操作 37
1.10 案例 H:重复打开数据库 39
1.11 案例 I:AUTOINCREMENT 可没有你想的那么简单 40
1.12 案例 J:Bitmap 解码,Google 没有告诉你的方面 45
1.13 专项标准:磁盘 48
第 2 章 内存:性能优化的终结者 50
2.1 原理 50
2.2 工具集 57
2.3 案例 A:内类是有危险的编码方式 103
2.4 案例 B:使用统一界面绘制服务的内存问题 106
2.5 案例 C:结构化消息点击通知产生的内存问题 109
2.6 案例 D:为了不卡,所以可能泄漏 110
2.7 案例 E:登录界面有内存问题吗 114
2.8 案例 F:使用 WifiManager 的内存问题 116
2.9 案例 G:把 WebView 类型泄漏装进垃圾桶进程 120
2.10 案例 H:定时器的内存问题 123
2.11 案例 I:FrameLayout.POSTDELAY 触发的内存问题 126
2.12 案例 J:关于图片解码配色设置的建议 129
2.13 案例 K:图片放错资源目录也会有内存问题 134
2.14 案例 L:寻找多余的内存——重复的头像 139
2.15 案例 M:大家伙要怎么才能进入小车库 144
2.16 Android 要纠正内存世界观了 149
2.17 专项标准:内存 152
第 3 章 网络:性能优化中的不可控因素 154
3.1 原理 154
3.2 工具集 157
3.3 案例 A:WebView 缓存使用中的坑 189
3.4 案例 B:离线包下载失败导致重复下载 196
3.5 案例 C:使用压缩策略优化资源流量 197
3.6 案例 D:手机 QQ 发图速度优化 202
3.7 案例 E:手机 QQ 在弱网下 PTT 重复发送 206
3.8 专项标准:网络 208
第 4 章 CPU:速度与负载的博弈 210
4.1 原理 210
4.2 工具集 211
4.3 案例 A:音乐播放后台的卡顿问题 215
4.4 案例 B:要注意 Android Java 中提供的低效 API 216
4.5 案例 C:用神器 renderscript 来减少你图像处理的 CPU 消耗 218
4.6 专项标准:CPU 220
第 5 章 电池:它只是结果不是原因221
5.1 原理 221
5.2 工具集 226
5.3 案例 A:QQWi-Fi 耗电 243
5.4 案例 B:QQ 数据上报逻辑优化 244
5.5 案例 C:动画没有及时释放 245
5.6 案例 D:间接调用 WakeLock 没有及时释放 246
5.7 案例 E:带兼容性属性的 WakeLock 释放的巨坑 251
5.8 专项标准:电池 253
第 2 部分 交互类性能
第 6 章 原理与工具集 255
6.1 原理 255
6.2 工具集 257
6.2.1 Perfbox 自研工具:Scrolltest 257
6.2.2 Systrace(分析) 260
6.2.3 Trace View(分析) 269
6.2.4 gfxinfo(分析) 271
6.2.5 Intel 的性能测试工具:UxTune(测评 + 分析) 273
6.2.6 Hierarchy Viewer(分析) 274
6.2.7 Slickr(测评 + 分析) 277
6.2.8 图形引擎分析神器——Adreno Profiler 工具使用说明 281
6.2.9 Chrome DevTool 286
第 7 章 流畅度:没有最流畅,只有更流畅 295
7.1 案例 A:红米手机 QQ 上的手机消息列表卡顿问题 295
7.2 案例 B:硬件加速中文字体渲染的坑 298
7.3 案例 C:圆角的前世今生 304
7.4 案例 D:让企鹅更优雅地传递火炬 312
7.5 案例 E:H5 页面卡顿,到底是谁闯的祸 314
7.6 专项标准:流畅度 320
第 8 章 响应时延:别让用户等待 322
8.1 案例 A:Android 应用发生黑屏的场景分析 322
8.2 案例 B:“首次打开聊天窗口”之痛 324
8.3 专项标准:响应时延 328
第 3 部分 其他事项
第 9 章 还应该知道的一些事儿 330
9.1 UI 自动化测试 330
9.2 专项竞品测试攻略 334
9.3 未来的未来 344
王晋康著名科幻作家,中国民主同盟盟员,中国作家协会会员暨中国科普作协会员,河南省作协会员,高级工程师。1966年高中毕业后度过了三年知青生涯,1978年考入西安...
升职、提薪、和老外领导聊天……只有招架之功的办公外语怎么够?本书作者将带你进入一堂不一样的英语课。看美剧怎样学英语?E-ma
熊逸,中国当代重要的一位思想隐士,隐于市而专心著书的人。熊逸,是一个笔名,只有极少的人识得他的庐山真面目。熊逸坚持用这个笔名解剖中国传统文化,用学贯中西的现代视...
作者目前为苏州工业园区职业技术学院艺术系教师
曾有这样一个传说,每隔500年,凤凰就会回到开罗,在这里浴火重生,而这座城市也正如这种神鸟一般,在漫长的历史中饱经各种苦难,却每每总能焕发新的生机。开罗,作为这...
冰岛刑法典 作者简介 p> 陈志军,男,1976年1月生,湖南新邵人。1998年7月毕业于中国人民大学法学院法学专业,获法学学士学位;2001年6月、2004年...
孙晓倾二十年心力全新修订。书中无人不可以为英雄,贩夫走卒、市井小民、娼妇与公主、乞丐与皇帝,莫不可以为英雄。这是长篇武侠小说《英雄志》的5-8卷,即第五卷《西出...
冥灵上海市作家协会成员已出版《梦神》《欢喜城》《低到尘埃》《百味胭脂弄》《鱼·小岛惊魂》《不如我们重新来过》如果没有特别爱写字,我想去曲艺界,跟郭德纲、于谦学相...
酸碱平衡和酸碱平衡紊乱 内容简介 临床各科多种疾病常伴发酸碱平衡紊乱,严重影响机体代谢和功能,加重原发病的病情,甚至威胁生命。因此,了解机体对酸碱平衡的调节机制...
安迪•图伊(Andy Tuohy)风格独特的英国插画家、艺术家、平面设计师,拥有超过25年的设计经验。他的作品散见于各种商品、食品包装、室内设计上,绘画作品也被...
内容简介你在意你周围的公共文化吗?怎样的公共文化才能让人生活得更有尊严?在全球化的世界中,公民们应该如何在民族国家内的公共生活中维护人类的共同尊严?本书以公共文...
豪尔赫·布卡伊(Jorge Bucay),1949年出生于布宜诺斯艾利斯。医学博士,专攻心理疾病,是完形学派(又称格式塔学派)的心理治疗师。他是备受尊崇的心理医...
全面介绍世界各主要宗教打开理解世界的另一个面向◎ 编辑推荐如果不懂宗教,我们可能无法欣赏世界上的大多数文艺作品;如果不懂宗教,我们很难真正理解生活在其他文化中的...
所有人都以为他死了。喜剧天才海克特•曼是二十年代好莱坞光彩夺目的新星,却在某天突然离家出走,从此音信杳无。六十年来,他的离奇失踪始终是个不解之谜。文学教授戴维•...
江苏农业野生植物资源 本书特色管永祥、李亚等编*的《江苏农业野生植物资源》根据江苏省境内农业野生植物资源的状况,收录了分布较广的种类560余种。按经济用途分为1...
中国国家地理·图书出品,史上最洋气的下厨房指南,可以不下厨房,但不能不懂生活。 送给爱生活的你 !———————————————————————————————...
高山云(1959—2016),本名吕烈丹,考古学者,香港中文大学人类学系教授。从事史前考古、农业起源、史前自然环境变化、文化遗产管理和博物馆学方面的科研教学工作...
ViP(Vision in Product design)产品设计法则是以情境驱动,以交互为中心的设计方法,它引导设计师关注产品与用户的关系,鼓励设计师放眼未来...
机电工程管理与实务高频考点精析-全国二级建造师执业资格考试高频考点精析-2016年版-2H300000 内容简介 本系列图书作为建造师执业资格考试的辅导教材,既...
中西医结合临床精萃 内容简介 本书收集并精选近十多年来国内公开发表的医药期刊中有关中西医结合*新、疗效*好的报道,采取分科论病,以病为纲,以病统方的方法进行汇编...