Android应用性能优化

Android应用性能优化
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [法] ,
2012-10
版次: 1
ISBN: 9787115272416
定价: 49.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 226页
字数: 355千字
正文语种: 简体中文
原版书名: Pro Android Apps Performance Optimization
87人买过
  •   今天的Android应用开发者经常要想尽办法来提升程序性能。由于应用越来越复杂,这个问题也变得越来越棘手。《Android应用性能优化》主要介绍如何快速高效地优化应用,让应用变得稳定高效。你将学会利用AndroidSDK和NDK来混合或单独使用Java、C/C++来开发应用。书中还特别讲解了如下内容:
      ·一些OpenGL的优化技术以及RenderScript(Android的新特性)的基础知识;
      ·利用SDK来优化应用的Java代码的技巧;
      ·通过高效使用内存来提升性能的技巧;
      ·延长电池使用时间的技巧;
      ·使用多线程的时机及技巧;
      ·评测剖析代码的技巧。
      把《Android应用性能优化》的内容学以致用,你的编程技术就会得到关键性的提升,写出的应用就会更为健壮高效,从而广受用户好评,并最终获得成功。
      HervéGuihot,目前在联发科技公司担任软件工程经理。他有十多年的嵌入式系统开发工作经验,主要与数字电视技术相关。目前正在研究如何将Android引入基于ARM的数字家庭平台(电视,蓝光播放器)。
    第1章  Java代码优化
    1.1  Android如何执行代码
    1.2  优化斐波纳契数列
    1.2.1  从递归到迭代
    1.2.2  BigInteger
    1.3  缓存结果
    1.4  API等级
    1.5  数据结构
    1.6  响应能力
    1.6.1  推迟初始化
    1.6.2  StrictMode
    1.7  SQLite
    1.7.1  SQLite语句
    1.7.2  事务
    1.7.3  查询
    1.8  总结
    第2章  NDK入门
    2.1  NDK里有什么
    2.2  混合使用Java和C/C++代码
    2.2.1  声明本地方法
    2.2.2  实现JNI粘合层
    2.2.3  创建Makefile
    2.2.4  实现本地函数
    2.2.5  编译本地库
    2.2.6  加载本地库
    2.3  Application.mk
    2.3.1  为(几乎)所有设备优化
    2.3.2  支持所有设备
    2.4  Android.mk
    2.5  使用C/C++改进性能
    2.6  本地Acitivity
    2.6.1  构建缺失的库
    2.6.2  替代方案
    2.7  总结
    第3章  NDK进阶
    3.1  汇编
    3.1.1  最大公约数
    3.1.2  色彩转换
    3.1.3  并行计算平均值
    3.1.4  ARM指令
    3.1.5  ARM NEON
    3.1.6  CPU特性
    3.2  C扩展
    3.2.1  内置函数
    3.2.2  向量指令
    3.3  技巧
    3.3.1  内联函数
    3.3.2  循环展开
    3.3.3  内存预读取
    3.3.4  用LDM/STM替换LDR/STD
    3.4  总结
    第4章  高效使用内存
    4.1  说说内存
    4.2  数据类型
    4.2.1  值的比较
    4.2.2  其他算法
    4.2.3  数组排序
    4.2.4  定义自己的类
    4.3  访问内存
    4.4  排布数据
    4.5  垃圾收集
    4.5.1  内存泄漏
    4.5.2  引用
    4.6  API
    4.7  内存少的时候
    4.8  总结
    第5章  多线程和同步
    5.1  线程
    5.2  AsyncTask
    5.3  Handler和Looper
    5.3.1  Handler
    5.3.2  Looper
    5.4  数据类型
    5.5  并发
    5.6  多核
    5.6.1  为多核修改算法
    5.6.2  使用并发缓存
    5.7  Activity生命周期
    5.7.1  传递信息
    5.7.2  记住状态
    5.8  总结
    第6章  性能评测和剖析
    6.1  时间测量
    6.1.1  System.nanoTime()
    6.1.2  Debug.threadCpuTimeNanos()
    6.2  方法调用跟踪
    6.2.1  Debug.startMethodTracing()
    6.2.2  使用Traceview工具
    6.2.3  DDMS中的Traceview
    6.2.4  本地方法跟踪
    6.3  日志
    6.4  总结
    第7章  延长电池续航时间
    7.1  电池
    7.2  禁用广播接收器
    7.3  网络
    7.3.1  后台数据
    7.3.2  数据传输
    7.4  位置
    7.4.1  注销监听器
    7.4.2  更新频率
    7.4.3  多种位置服务
    7.4.4  筛选定位服务
    7.4.5  最后已知位置
    7.5  传感器
    7.6  图形
    7.7  提醒
    7.8  WakeLock
    7.9  总结
    第8章  图形
    8.1  布局优化
    8.1.1  相对布局
    8.1.2  合并布局
    8.1.3  重用布局
    8.1.4  ViewStub
    8.2  布局工具
    8.2.1  层级视图
    8.2.2  layoutopt
    8.3  OpenGL ES
    8.3.1  扩展
    8.3.2  纹理压缩
    8.3.3  Mipmap
    8.3.4  多APK
    8.3.5  着色
    8.3.6  场景复杂性
    8.3.7  消隐
    8.3.8  渲染模式
    8.3.9  功耗管理
    8.4  总结
    第9章  RenderScript
    9.1  概览
    9.2  Hello World
    9.3  Hello Rendering
    9.3.1  创建渲染脚本
    9.3.2  创建RenderScriptGL Context
    9.3.3  展开RSSurfaceView
    9.3.4  设置内容视图
    9.4  在脚本中添加变量
    9.5  HelloCompute
    9.5.1  Allocation
    9.5.2  rsForEach
    9.5.3  性能
    9.6  自带的RenderScript API
    9.6.1  rs_types.rsh
    9.6.2  rs_core.rsh
    9.6.3  rs_cl.rsh
    9.6.4  rs_math.rsh
    9.6.5  rs_graphics.rsh
    9.6.6  rs_time.rsh
    9.6.7  rs_atomic.rsh
    9.7  RenderScript与NDK对比
    9.8  总结
  • 内容简介:
      今天的Android应用开发者经常要想尽办法来提升程序性能。由于应用越来越复杂,这个问题也变得越来越棘手。《Android应用性能优化》主要介绍如何快速高效地优化应用,让应用变得稳定高效。你将学会利用AndroidSDK和NDK来混合或单独使用Java、C/C++来开发应用。书中还特别讲解了如下内容:
      ·一些OpenGL的优化技术以及RenderScript(Android的新特性)的基础知识;
      ·利用SDK来优化应用的Java代码的技巧;
      ·通过高效使用内存来提升性能的技巧;
      ·延长电池使用时间的技巧;
      ·使用多线程的时机及技巧;
      ·评测剖析代码的技巧。
      把《Android应用性能优化》的内容学以致用,你的编程技术就会得到关键性的提升,写出的应用就会更为健壮高效,从而广受用户好评,并最终获得成功。
  • 作者简介:
      HervéGuihot,目前在联发科技公司担任软件工程经理。他有十多年的嵌入式系统开发工作经验,主要与数字电视技术相关。目前正在研究如何将Android引入基于ARM的数字家庭平台(电视,蓝光播放器)。
  • 目录:
    第1章  Java代码优化
    1.1  Android如何执行代码
    1.2  优化斐波纳契数列
    1.2.1  从递归到迭代
    1.2.2  BigInteger
    1.3  缓存结果
    1.4  API等级
    1.5  数据结构
    1.6  响应能力
    1.6.1  推迟初始化
    1.6.2  StrictMode
    1.7  SQLite
    1.7.1  SQLite语句
    1.7.2  事务
    1.7.3  查询
    1.8  总结
    第2章  NDK入门
    2.1  NDK里有什么
    2.2  混合使用Java和C/C++代码
    2.2.1  声明本地方法
    2.2.2  实现JNI粘合层
    2.2.3  创建Makefile
    2.2.4  实现本地函数
    2.2.5  编译本地库
    2.2.6  加载本地库
    2.3  Application.mk
    2.3.1  为(几乎)所有设备优化
    2.3.2  支持所有设备
    2.4  Android.mk
    2.5  使用C/C++改进性能
    2.6  本地Acitivity
    2.6.1  构建缺失的库
    2.6.2  替代方案
    2.7  总结
    第3章  NDK进阶
    3.1  汇编
    3.1.1  最大公约数
    3.1.2  色彩转换
    3.1.3  并行计算平均值
    3.1.4  ARM指令
    3.1.5  ARM NEON
    3.1.6  CPU特性
    3.2  C扩展
    3.2.1  内置函数
    3.2.2  向量指令
    3.3  技巧
    3.3.1  内联函数
    3.3.2  循环展开
    3.3.3  内存预读取
    3.3.4  用LDM/STM替换LDR/STD
    3.4  总结
    第4章  高效使用内存
    4.1  说说内存
    4.2  数据类型
    4.2.1  值的比较
    4.2.2  其他算法
    4.2.3  数组排序
    4.2.4  定义自己的类
    4.3  访问内存
    4.4  排布数据
    4.5  垃圾收集
    4.5.1  内存泄漏
    4.5.2  引用
    4.6  API
    4.7  内存少的时候
    4.8  总结
    第5章  多线程和同步
    5.1  线程
    5.2  AsyncTask
    5.3  Handler和Looper
    5.3.1  Handler
    5.3.2  Looper
    5.4  数据类型
    5.5  并发
    5.6  多核
    5.6.1  为多核修改算法
    5.6.2  使用并发缓存
    5.7  Activity生命周期
    5.7.1  传递信息
    5.7.2  记住状态
    5.8  总结
    第6章  性能评测和剖析
    6.1  时间测量
    6.1.1  System.nanoTime()
    6.1.2  Debug.threadCpuTimeNanos()
    6.2  方法调用跟踪
    6.2.1  Debug.startMethodTracing()
    6.2.2  使用Traceview工具
    6.2.3  DDMS中的Traceview
    6.2.4  本地方法跟踪
    6.3  日志
    6.4  总结
    第7章  延长电池续航时间
    7.1  电池
    7.2  禁用广播接收器
    7.3  网络
    7.3.1  后台数据
    7.3.2  数据传输
    7.4  位置
    7.4.1  注销监听器
    7.4.2  更新频率
    7.4.3  多种位置服务
    7.4.4  筛选定位服务
    7.4.5  最后已知位置
    7.5  传感器
    7.6  图形
    7.7  提醒
    7.8  WakeLock
    7.9  总结
    第8章  图形
    8.1  布局优化
    8.1.1  相对布局
    8.1.2  合并布局
    8.1.3  重用布局
    8.1.4  ViewStub
    8.2  布局工具
    8.2.1  层级视图
    8.2.2  layoutopt
    8.3  OpenGL ES
    8.3.1  扩展
    8.3.2  纹理压缩
    8.3.3  Mipmap
    8.3.4  多APK
    8.3.5  着色
    8.3.6  场景复杂性
    8.3.7  消隐
    8.3.8  渲染模式
    8.3.9  功耗管理
    8.4  总结
    第9章  RenderScript
    9.1  概览
    9.2  Hello World
    9.3  Hello Rendering
    9.3.1  创建渲染脚本
    9.3.2  创建RenderScriptGL Context
    9.3.3  展开RSSurfaceView
    9.3.4  设置内容视图
    9.4  在脚本中添加变量
    9.5  HelloCompute
    9.5.1  Allocation
    9.5.2  rsForEach
    9.5.3  性能
    9.6  自带的RenderScript API
    9.6.1  rs_types.rsh
    9.6.2  rs_core.rsh
    9.6.3  rs_cl.rsh
    9.6.4  rs_math.rsh
    9.6.5  rs_graphics.rsh
    9.6.6  rs_time.rsh
    9.6.7  rs_atomic.rsh
    9.7  RenderScript与NDK对比
    9.8  总结
查看详情
12
系列丛书 / 更多
Android应用性能优化
机器学习实战
[美]Peter Harrington 著;李锐、李鹏、曲亚东 译
Android应用性能优化
图灵程序设计丛书:Python基础教程
[挪威]Magnus Lie Hetland 著;司维、曾军崴、谭颖华 译
Android应用性能优化
JavaScript高级程序设计(第3版)
[美]Nicholas C.Zakas 著;李松峰、曹力 译
Android应用性能优化
Python编程:从入门到实践
[美]埃里克·马瑟斯(Eric Matthes) 著;袁国忠 译
Android应用性能优化
R语言实战(第2版)
[美]卡巴科弗(Robert I. Kabacoff) 著;王小宁、刘撷芯、黄俊文 译
Android应用性能优化
大数据:互联网大规模数据挖掘与分布式处理
[美]Anand、[美]Jeffrey David Ullman 著;王斌 译
Android应用性能优化
算法(第4版)
[美]Robert、[美]Kevin Wayne 著;谢路云 译
Android应用性能优化
Spark快速大数据分析
[美]卡劳(Holden Karau)、[美]肯维尼斯科(Andy Konwinski)、[美]温德尔(Patrick Wendell)、[加拿大]扎哈里亚(Matei Zaharia) 著;王道远 译
Android应用性能优化
MySQL必知必会
[英]福塔(Ben Forta) 著;刘晓霞、钟鸣 译
Android应用性能优化
图解HTTP
[日]上野·宣 著;于均良 译
Android应用性能优化
Objective-C基础教程 第2版
[美]Scott、[美]Waqar、[美]Mark Dalrymple 著;周庆成 译
Android应用性能优化
算法图解
袁国忠 译
您可能感兴趣 / 更多
Android应用性能优化
维莱特才不烦恼呢(全2册)
[法]埃米莉·克拉克 著
Android应用性能优化
八十天环游地球 青少年儿童文学读物 (中小学生课外阅读指导丛书) 无障碍阅读 彩插本 少儿6-8-9-12岁四五六年级快乐读书吧
[法]儒勒·凡尔纳
Android应用性能优化
精神病患者的艺术作品(西方思想文化译丛)
[法]法比安娜·于 拉克 著;郝淑芬 译
Android应用性能优化
鼓楼新悦.采香者:世界香水之源
[法]多米尼克·罗克(Dominique Roques) 著;王祎慈 译;乔溪 审校
Android应用性能优化
裙子的文化史:从中世纪至今
[法]乔治·维加埃罗 著;刘康宁 译
Android应用性能优化
寻找海洋中的100只动物
[法]菲利普·雅尔贝
Android应用性能优化
寻找森林中的100只动物
[法]菲利普·雅尔贝
Android应用性能优化
每天5分钟数学小奇迹(全6册)数学不是刷题,减负不是躺平!中法名师联合打造,适用于小学全阶段数学思维训练+拓展拔高!多位一线校长联合推荐
[法]伯努瓦·里特 默罕默德·乌卡里 蒂埃里·伊赫尔曼 著;郭笑笑 顾莹 译;尚童 出品;中文主编 季民;编撰:简明教育团队
Android应用性能优化
窄门(汉译世界文学5)
[法]安德烈·纪德
Android应用性能优化
楚克斯大家族
[法]邦雅曼·里夏尔 著;[法]克拉斯科埃 绘
Android应用性能优化
树木和森林的世界
[法]热内·梅特莱尔
Android应用性能优化
七巧板(全4册):1《芍药之谜》2《西施犬之谜》3《玉玺之谜》4《蓝鹦鹉之谜》
[法]弗洛朗斯·拉米