网站颜色:

包邮 正版书籍!Android深度探索 卷2 系统应用源代码分析与ROM定制(附光盘)/李宁 著 程序设计书籍 移动开发书籍 计算机书籍.

  • 产品名称:Android深度探索系统应用源...
  • 是否是套装:否
  • 书名:Android深度探索系统应用源代码分析与ROM定制
  • 定价:89.00元
  • 出版社名称:人民邮电出版社
  • 作者:无
  • 书名:Android深度探索系统应用源代码分析与ROM定制

Android深度探索 卷2 系统应用源代码分析与ROM定制(附光盘)

 

基本信息

定     价¥ (咨询特价)

作     者李宁 编著

出 版 社人民邮电出版社

出版时间2015-1-1

ISBN(咨询特价)

所属分类图书 > 计算机/网络 > 程序设计 > 移动开发

版 次:01

页 数:496

字 数:839

印刷时间:2014-12-8

开 本:16开

纸 张:胶版纸

印 次:01

包 装:平装

编辑推荐

国内第一本介绍定制ROM的书

从零开始讲解Android的刷机技术

深度分析和讲解了root、各类ROM的定制技术

分析了大量的Android系统应用源代码,使读者可以深度定制Android ROM

采用最流行的CM Android源代码进行分析,可支持多达上百种机型

采用较新的Android进行讲解,紧跟时代脉搏

这些系统应用包括Android应用安装和卸载管理、系统设置、系统设置内容提供者、与管理、短信与彩信管理、Launcher2和NFC后台服务程序。通过对这些Android系统应用的源代码分析,会使读者定制出更完美的Android ROM。

 

内容推荐

全书分为2部分。第一部分主要介绍了Android源代码和Linux内核源代码的下载和编译,Root权限的提取,Android ROM的制作和刷机,Recovery的定制等。第二部分主要分析了主要Android系统应用的实现原理和源代码。这些系统应用包括Android应用安装和卸载管理、系统设置、系统设置内容提供者、与管理、短信与彩信管理、Launcher2和NFC后台服务程序。通过对这些Android系统应用的源代码分析,会使读者定制出更完美的Android ROM。

本书主要采用了CM10.1(Android4.2.2)源代码进行讲解和分析,使读者可以系统和完整地掌握定制Android ROM所需要的最新技术。无论读者是想找一份好工作,还是想满足自己的Geek情节,本书都是您的首选。

本书适合具备一定的开发经验(最好有Java或C/C++开发经验)、想学习Android和Linux底层开发的程序员,具备一定的Android开发经验,想从事底层开发的编程爱好者使用;也适合作为相关培训学校的Android底层开发培训教材。

 

目录

第1章    学习前的准备工作    1

1.1 安装和配置JDK    1

1.2 安装和配置Android开发环境    1

1.3 官方Android源代码    2

1.3.1 下载Android源代码    2

1.3.2 编译Android源代码    3

1.4 官方Linux内核源代码    5

1.4.1 Linux内核支持的Android设备    5

1.4.2 下载Linux内核源代码    5

1.4.3 查看Linux内核的分支    7

1.4.4 看看Google那帮家伙在做什么    8

1.4.5 获取Linux内核的配置文件    10

1.4.6 安装交叉编译器    11

1.4.7 编译Linux内核源代码    12

1.5Cyanogenmod(CM)源代码    12

1.5.1 什么是CM    12

1.5.2 CM支持哪些Android设备    13

1.5.3与Android设备对应的Codename和CM版本    14

1.5.4 下载CM Android源代码    15

1.5.5 下载经过CM适配的Linux内核源代码    17

1.5.6 编译Android源代码生成Recovery ROM    17

1.5.7 单独编译CM Linux内核源代码    21

1.5.8 刷机!刷机!    22

1.5.9 下载现成的CM ROM    23

1.6小结    24

第2章    提取ROOT权限    26

2.1 什么是ROM    26

2.2 ROM的种类    27

2.3刷官方的ROM    27

2.3.1 下载官方的ROM    28

2.3.2 用无人值守方式刷ROM    28

2.3.3 分别刷ROM包含的各种镜像文件    29

2.4 Android获取ROOT权限的必要性    31

2.5 提取ROOT权限的原理    32

2.6 用极客的方式提取ROOT权限    33

2.6.1 提取ROOT权限的步骤    33

2.6.2 需要一个很酷的recovery    34

2.6.3 su命令源代码分析    36

2.6.4 制作第一个Recovery刷机包(编写updater-script脚本文件)    39

2.6.5 首次通过DIY方式提取ROOT权限    43

2.6.6 上传Android应用到/system/app目录    43

2.7 小结    44

第3章    Root权限的安全屏障    45

3.1 通过su提取Root权限的安全隐患    45

3.2 Android应用申请Root权限    46

3.3 Superuser.apk为什么不见了    48

3.4 申请Root权限为什么失灵了    50

3.5CM ROM如何为Root权限增加安全屏障    52

3.6 ADB Shell动作管理命令(am)    55

3.6.1 显示窗口(Activity)    55

3.6.2发送广播(Broadcast)    56

3.6.3 开始服务(Service)    57

3.7su实现原理及源代码分析    57

3.7.1 su进行Root授权的处理流程    57

3.7.2 初始化调用者数据    64

3.7.3 初始化路径    66

3.7.4 动态宏定义    67

3.7.5 检测数据库    69

3.7.6 创建LocalSocket服务    70

3.7.7 显示“Root授权”窗口    72

3.7.8 等待Superuser连接LocalSocket服务    73

3.7.9 向Superuser传输调用者信息    74

3.7.10 接收用户选择的“Root授权”策略    75

3.7.11 允许和拒绝“Root授权”    75

3.8 Superuser的实现原理与源代码分析    77

3.8.1 “Root授权”警告窗口的处理流程    77

3.8.2 设置“Root授权”窗口的控件    80

3.8.3 获取“Root授权”持续时间    83

3.8.4 处理“Root授权”策略    85

3.8.5 读取Su协议数据    86

3.8.6获取和设置“调用者”信息    88

3.9 小结    90

第4章    ROM定制    91

4.1 刷机的那些事    91

4.1.1 Android刷机的本质    91

4.1.2 制作ROM的不同层次    93

4.1.3 为什么要刷机    94

4.1.4 刷机带来的风险及其预防措施    95

4.2在官方ROM的基础上定制各种镜像    96

4.2.1 修改系统镜像(system.img)    96

4.2.2 定制开机动画    99

4.2.3 用户数据镜像(userdata.img)    103

4.2.4 内存磁盘镜像(ramdisk.img)    106

4.2.5Linux内核镜像(boot.img)    108

4.2.6 制作已经有ROOT权限的ROM    109

4.2.7 Recovery镜像(recovery.img)    110

4.2.8 缓存镜像(cache.img)    111

4.2.9 制作完美的Bootloader ROM    112

4.3 直接从CM源代码制作ROM    114

4.3.1 制作Bootloader ROM    115

4.3.2制作Recovery ROM    116

4.4 Edify语言    120

4.4.1 Edify语言概述    120

4.4.2 测试Edity脚本(updater-script)    120

4.4.3 Edity函数详解    122

4.4.4 Edity语言的实现原理    131

4.5集成Google Services Framework和Google Play    134

4.6在CM ROM中集成第三方APK程序    135

4.6.1为什么不能直接复制APK和ODEX文件    135

4.6.2 校验odex文件需要依赖哪些Library    136

4.6.3 合并APK和ODEX文件    136

4.7 小结    139

第5章    Recovery深度分析与定制    140

5.1 什么是Recovery    140

5.2 Clockworkmod Recovery源代码解析    142

5.2.1如何分析Recovery源代码    142

5.2.2 显示主菜单    144

5.2.3 切换不同的菜单项    146

5.2.4 选择菜单项    148

5.3Recovery支持的各种操作    150

5.3.1 重启和关闭Android设备    150

5.3.2 从SD卡刷ROM    151

5.3.3 使用sideload模式刷ROM    157

5.3.4 清除指定文件系统中的数据    158

5.3.5 备份与恢复    161

5.3.6 挂载(mount)、卸载(umount)和格式化(format)文件系统    167

5.4添加自己的Recovery菜单项    170

5.5 汉化Recovery    172

5.5.1 汉化Recovery的原理和步骤    172

5.5.2 初始化字体    173

5.5.3 绘制中文字符    175

5.6小结    176

第6章Android系统应用的开发与测试    177

6.1 什么是Android系统应用    177

6.2为什么要研究Android系统应用    178

6.3如何编写Android系统应用    178

6.4 分析第一个Android系统应用:计算器    180

6.4.1 计算器应用(Calculator)的基本结构    181

6.4.2 编译、测试和调试Calculator    183

6.4.3 允许其他Android应用通过Calculator计算表达式    184

6.5 小结    186

第7章 安装与卸载应用程序(PackageInstaller)    187

7.1 分析源代码的第一步应该做什么    187

7.2 寻找PackageInstaller的突破口    190

7.3安装和卸载Android应用的全部方式    192

7.4 安装Android应用前的校验    193

7.4.1 安装Android应用的初始化工作    193

7.4.2 显示校验窗口    197

7.4.3 获取Android应用的权限列表    201

7.5开始安装应用程序    204

7.5.1 PackageInstaller的安装原理    204

7.5.2 静默安装Android应用    211

7.6 卸载Android应用    214

7.6.1 PackageInstaller卸载Android应用前的确认    214

7.6.2 卸载Android应用的原理    217

7.6.3 静默卸载Android应用    220

7.7小结    222

第8章    系统设置(一)    224

8.1 为系统设置添加新功能    224

8.1.1 系统设置的编译与权限    224

8.1.2修改开机动画    226

8.1.3 寻找Settings的入口点    231

8.1.4 为Settings添加新的功能项    233

8.1.5 迁移修改开机动画的窗口类    235

8.2Wi-Fi    236

8.2.1 如何为设置项添加Switch控件    237

8.2.2 为“修改开机动画”设置项添加Switch控件    242

8.2.3“关闭/打开”Wi-Fi    245

8.2.4 系统信息与SQLite的WAL模式    248

8.2.5禁止飞行模式下单独开启Wi-Fi

A2 

热门设计服务