Android应用性能优化

书名:Android应用性能优化
作者:[法]HervéGuihot
译者:白龙
ISBN:9787115272416
出版社:人民邮电出版社
出版时间:2012-10
格式:epub/mobi/azw3/pdf
页数:226
豆瓣评分: 7.8

书籍简介:

内容简介: 今天的Android应用开发者经常要想尽办法来提升程序性能。由于应用越来越复杂,这个问题也变得越来越棘手。本书主要介绍如何快速高效地优化应用,让应用变得稳定高效。你将学会利用Android SDK和NDK来混合或单独使用Java、C/C++来开发应用。书中还特别讲解了如下内容: • 一些OpenGL的优化技术以及RenderScript(Android的新特性)的基础知识; • 利用SDK来优化应用的Java代码的技巧; • 通过高效使用内存来提升性能的技巧; • 延长电池使用时间的技巧; • 使用多线程的时机及技巧; • 评测剖析代码的技巧。 把本书的内容学以致用,你的编程技术就会得到关键性的提升,写出的应用就会更为健壮高效,从而广受用户好评,并最终获得成功。

作者简介:

作者介绍:

Hervé Guihot 目前在联发科技公司(MTK, www.mediatek.com)担任软件工程经理。他有十多年的嵌入式系统开发工作经验,主要与数字电视技术相关。目前正在研究如何将Android引入基于ARM的数字家庭平台(电视,蓝光播放器)。

书友短评:

@ 云の影 除了翻译不是太好外,其它都很好。主要从比较细微的地方进行优化,而且涉及汇编语言比较多(应该跟作者的多年嵌入式背景有关)。不过总体来说让人从比较新颖的角度去考虑优化!相当特别的一本书! @ unicorn 很多篇幅都在写利用jni来优化,而除了jni以外的优化手段貌似是安卓开发中经常的手段 @ 飘飘白云 专门讲app优化的各种实用技巧嘛说不上,有点东拼西凑凑页数的味道,只能说有一些零散的知识点在哪里吧,但也并不多。 @ [已注销] 把NDK和RS部分掠过了,其他部分都还不错,更像是Tips的集合。 @ Yun 唯一可选可读。 @ [已死亡] 以前看过,还可以吧,有点老了 @ 小浩浩 Android程序员进阶,性能优化典范。虽然好多东西自己平时在网络上也有积累,阅读这本书算是一次总结~ @ Yun 唯一可选可读。 @ ???? 书很薄,一两天就看完了,知识点也比较浅,优化这种事,师傅领进门,修行在个人,全靠经验 @ [已注销] 把NDK和RS部分掠过了,其他部分都还不错,更像是Tips的集合。

目    录
第1章  Java代码优化  1
1.1  Android如何执行代码  1
1.2  优化斐波纳契数列  4
1.2.1  从递归到迭代  4
1.2.2  BigInteger  6
1.3  缓存结果  10
1.4  API等级  12
1.5  数据结构  14
1.6  响应能力  17
1.6.1  推迟初始化  19
1.6.2  StrictMode  19
1.7  SQLite  21
1.7.1  SQLite语句  21
1.7.2  事务  25
1.7.3  查询  26
1.8  总结  27
第2章  NDK入门  28
2.1  NDK里有什么  28
2.2  混合使用Java和C/C++代码  31
2.2.1  声明本地方法  31
2.2.2  实现JNI粘合层  32
2.2.3  创建Makefile  33
2.2.4  实现本地函数  35
2.2.5  编译本地库  36
2.2.6  加载本地库  37
2.3  Application.mk  37
2.3.1  为(几乎)所有设备优化  39
2.3.2  支持所有设备  40
2.4  Android.mk  43
2.5  使用C/C++改进性能  45
2.6  本地Acitivity  52
2.6.1  构建缺失的库  54
2.6.2  替代方案  59
2.7  总结  60
第3章  NDK进阶  61
3.1  汇编  61
3.1.1  最大公约数  62
3.1.2  色彩转换  66
3.1.3  并行计算平均值  70
3.1.4  ARM指令  74
3.1.5  ARM NEON  79
3.1.6  CPU特性  80
3.2  C扩展  81
3.2.1  内置函数  82
3.2.2  向量指令  82
3.3  技巧  86
3.3.1  内联函数  87
3.3.2  循环展开  87
3.3.3  内存预读取  87
3.3.4  用LDM/STM替换LDR/STD  89
3.4  总结  89
第4章  高效使用内存  90
4.1  说说内存  90
4.2  数据类型  91
4.2.1  值的比较  93
4.2.2  其他算法  95
4.2.3  数组排序  96
4.2.4  定义自己的类  97
4.3  访问内存  98
4.4  排布数据  100
4.5  垃圾收集  104
4.5.1  内存泄漏  105
4.5.2  引用  106
4.6  API  109
4.7  内存少的时候  110
4.8  总结  111
第5章  多线程和同步  112
5.1  线程  112
5.2  AsyncTask  115
5.3  Handler和Looper  118
5.3.1  Handler  118
5.3.2  Looper  120
5.4  数据类型  120
5.5  并发  124
5.6  多核  125
5.6.1  为多核修改算法  126
5.6.2  使用并发缓存  129
5.7  Activity生命周期  131
5.7.1  传递信息  132
5.7.2  记住状态  134
5.8  总结  137
第6章  性能评测和剖析  138
6.1  时间测量  138
6.1.1  System.nanoTime()  139
6.1.2  Debug.threadCpuTimeNanos()  140
6.2  方法调用跟踪  141
6.2.1  Debug.startMethodTracing()  141
6.2.2  使用Traceview工具  142
6.2.3  DDMS中的Traceview  144
6.2.4  本地方法跟踪  145
6.3  日志  147
6.4  总结  148
第7章  延长电池续航时间  150
7.1  电池  150
7.2  禁用广播接收器  155
7.3  网络  159
7.3.1  后台数据  159
7.3.2  数据传输  160
7.4  位置  162
7.4.1  注销监听器  163
7.4.2  更新频率  164
7.4.3  多种位置服务  164
7.4.4  筛选定位服务  166
7.4.5  最后已知位置  168
7.5  传感器  169
7.6  图形  170
7.7  提醒  171
7.8  WakeLock  173
7.9  总结  175
第8章  图形  176
8.1  布局优化  176
8.1.1  相对布局  178
8.1.2  合并布局  181
8.1.3  重用布局  183
8.1.4  ViewStub  184
8.2  布局工具  185
8.2.1  层级视图  186
8.2.2  layoutopt  186
8.3  OpenGL ES  186
8.3.1  扩展  187
8.3.2  纹理压缩  189
8.3.3  Mipmap  193
8.3.4  多APK  194
8.3.5  着色  195
8.3.6  场景复杂性  195
8.3.7  消隐  195
8.3.8  渲染模式  195
8.3.9  功耗管理  195
8.4  总结  196
第9章  RenderScript  197
9.1  概览  197
9.2  Hello World  199
9.3  Hello Rendering  202
9.3.1  创建渲染脚本  202
9.3.2  创建RenderScriptGL Context  203
9.3.3  展开RSSurfaceView  204
9.3.4  设置内容视图  204
9.4  在脚本中添加变量  205
9.5  HelloCompute  208
9.5.1  Allocation  209
9.5.2  rsForEach  210
9.5.3  性能  213
9.6  自带的RenderScript API  214
9.6.1  rs_types.rsh  215
9.6.2  rs_core.rsh  217
9.6.3  rs_cl.rsh  219
9.6.4  rs_math.rsh  222
9.6.5  rs_graphics.rsh  223
9.6.6  rs_time.rsh  224
9.6.7  rs_atomic.rsh  225
9.7  RenderScript与NDK对比  225
9.8  总结  226
· · · · · ·

添加微信公众号:好书天下获取

添加微信公众号:“好书天下”获取书籍好书天下 » Android应用性能优化
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

添加微信公众号:“好书天下”获取书籍

添加微信公众号:“好书天下”获取书籍添加微信公众号:“好书天下”获取书籍