计算机类专业教育 > 网络与信息安全类

Android系统软件开发(底层)

书号:9787113207182 套系名称:Goddgle Android/App Lnventor 教材出版资助计划项目

作者:夏德洲 张明 出版日期:2015-10-01

定价:32.00 页码 / 开本:228 /16

策划编辑:王春霞 责任编辑:王春霞 鲍闻

适用专业:无 适用层次:高职高专

最新印刷时间:

资源下载
教学课件 教学素材(暂无)
习题答案(暂无) 教学案例(暂无)
教学设计(暂无) 教学视频(暂无)
内容简介 前言 目录 作者介绍 图书特色
  •         本书是一本介绍Android 系统核心及系统级应用的技术用书,主要目标是让读者更加深入地理解Android 系统,让开发过程更高效。目前企业对Android 人才的需求主要在应用开发和底层系统开发两个方面,企业最紧缺的是兼具两者能力的系统开发工程师。本书共分为9 章,先介绍Android 底层的架构和Android 的启动过程;然后介绍Android 的系统编译和移植;接下来介绍Android的JNI和HAL层,这是Android系统级应用开发的核心内容;最后通过两个实例Led HAL和Sensor HAL对代码进行详细分析,让读者更加深入地理解Android底层系统开发。

            本书适合作为高职高专院校嵌入式技术与应用专业、移动互联应用技术专业的教材,也可供中等职业技术学校使用。"
  • 第1 章 概述............................................................................................................ 1
    1.1 Android 操作系统介绍................................................................................................... 1
    1.2 Android 软件架构介绍................................................................................................... 2
    1.3 Android 子系统介绍....................................................................................................... 3
    1.4 Android 应用程序开发过程........................................................................................... 4
    小结............................................................................................................................... ....... 5
    习题............................................................................................................................... ....... 5
    第2 章 Android 源码开发环境搭建.......................................................................... 6
    2.1 搭建主机虚拟机环境.................................................................................................... 6
    2.1.1 VMware Workstation 介绍................................................................................... 6
    2.1.2 安装VMware Workstation 虚拟机软件............................................................... 7
    2.1.3 安装Ubuntu 操作系统........................................................................................ 9
    2.1.4 VMware 网络配置............................................................................................. 15
    2.1.5 VMware 与主机数据共享.................................................................................. 18
    2.1.6 VMware 添加新硬件......................................................................................... 20
    2.2 搭建L inux 编译环境................................................................................................... 22
    2.2.1 建立Ubuntu 编译环境...................................................................................... 23
    2.2.2 JDK 安装.......................................................................................................... 23
    2.2.3 安装Android 编译工具.................................................................................... 25
    2.2.4 下载Android 源码............................................................................................ 25
    2.2.5 下载Linux 内核源码........................................................................................ 26
    2.3 编译Android 源码....................................................................................................... 26
    2.3.1 Android 源码目录结构..................................................................................... 27
    2.3.2 编译Android..................................................................................................... 30
    2.3.3 编译Linux 内核................................................................................................ 33
    2.4 搭建A ndroid SDK 开发环境........................................................................................ 34
    2.4.1 下载、安装Eclipse .......................................................................................... 34
    2.4.2 安装ADT 插件................................................................................................. 34
    2.4.3 下载、配置Android SDK 工具包..................................................................... 37
    2.4.4 下载Android SDK 平台.................................................................................... 38
    2.4.5 通过Android SDK Manager 创建模拟器........................................................... 38
    2.4.6 应用程序Framework 源码级调试..................................................................... 39
    2.5 定制Android 模拟器.................................................................................................... 45
    2.6 实训:Android 4.0 开发环境搭建及源码编译............................................................ 47
    目 录 CONTENTS
    2
    Android 系统软件开发(底层)
    小结............................................................................................................................... ...... 57
    习题............................................................................................................................... ...... 57
    第3 章 Android 系统的启动.................................................................................59
    3.1 Android init 进程启动.................................................................................................. 59
    3.2 Android 本地守护进程................................................................................................. 65
    3.2.1 ueventd 进程..................................................................................................... 66
    3.2.2 adbd 进程.......................................................................................................... 67
    3.2.3 servicemanager 进程.......................................................................................... 67
    3.2.4 vold 进程........................................................................................................... 68
    3.2.5 ril-daemon 进程................................................................................................ 68
    3.2.6 surfaceflinger 进程............................................................................................ 68
    3.3 zygote 守护进程与system_server 进程......................................................................... 69
    3.3.1 zygote 守护进程的启动..................................................................................... 69
    3.3.2 zygoteInit 类的功能与system_server 进程的创建............................................. 73
    3.3.3 system_server 进程的运行................................................................................ 76
    3.3.4 HOME 桌面的启动........................................................................................... 82
    3.4 实训:通过Init.rc 脚本开机启动Android 应用程序.................................................. 84
    小结............................................................................................................................... ...... 86
    习题............................................................................................................................... ...... 86
    第4 章 Android 编译系统与定制Android 平台系统.................................................87
    4.1 Android 编译系统......................................................................................................... 87
    4.1.1 Android 编译系统介绍...................................................................................... 87
    4.1.2 Android.mk 文件............................................................................................... 88
    4.2 实训:编译HelloWorld 应用程序............................................................................... 91
    4.3 定制Android 平台系统................................................................................................ 93
    4.3.1 添加新产品编译项........................................................................................... 93
    4.3.2 定制产品的意义及定制要点............................................................................ 99
    4.4 实训:定制开机界面................................................................................................. 100
    4.5 实训:定制开机文字................................................................................................. 104
    4.6 实训:定制系统开机动画......................................................................................... 106
    小结............................................................................................................................... .... 109
    习题............................................................................................................................... .... 110
    第5 章 JNI 机制..................................................................................................111
    5.1 JNI 概述..................................................................................................................... 111
    5.2 JNI 原理..................................................................................................................... 112
    5.3 JNI 中的数据传递...................................................................................................... 114
    5.3.1 JNI 基本类型.................................................................................................. 114
    5.3.2 JNI 引用类型.................................................................................................. 115
    5.4 Java 访问本地方法..................................................................................................... 116
    3
    目录
    5.5 JNI 访问Java 成员..................................................................................................... 117
    5.5.1 取得Java 属性ID 和方法ID.......................................................................... 118
    5.5.2 JNI 类型签名.................................................................................................. 120
    5.5.3 JNI 操作Java 属性和方法.............................................................................. 121
    5.5.4 在本地代码中创建J ava 对象......................................................................... 123
    5.5.5 Java 数组在本地代码中的处理...................................................................... 124
    5.6 局部引用与全局引用................................................................................................ 126
    5.6.1 局部引用........................................................................................................ 127
    5.6.2 全局引用........................................................................................................ 128
    5.6.3 在Java 环境中保存JNI 对象......................................................................... 128
    5.7 本地方法的注册........................................................................................................ 129
    5.7.1 JNI_OnLoad 方法............................................................................................ 129
    5.7.2 RegisterNatives 方法....................................................................................... 130
    5.8 实训:JNI 调用实训.................................................................................................. 133
    小结............................................................................................................................... ... 139
    习题............................................................................................................................... ... 140
    第6 章 Android 的对象管理................................................................................ 141
    6.1 智能指针.................................................................................................................... 141
    6.2 轻量级指针................................................................................................................ 142
    6.3 RefBase 类.................................................................................................................. 145
    6.4 弱引用指针wp........................................................................................................... 150
    6.5 智能指针的示例........................................................................................................ 153
    小结............................................................................................................................... ... 154
    习题............................................................................................................................... ... 154
    第7 章 Binder 通信............................................................................................. 155
    7.1 Android 进程空间与Binder 机制............................................................................... 155
    7.1.1 Android的Binder机制..................................................................................... 156
    7.1.2 面向对象的Binder IPC ..................................................................................... 157
    7.2 Binder 框架分析........................................................................................................ 158
    7.2.1 Binder Driver................................................................................................... 158
    7.2.2 Open Binder Driver.......................................................................................... 159
    7.2.3 ServiceManager 与实名Binder ........................................................................ 161
    7.3 Android Binder 协议................................................................................................... 162
    7.3.1 BINDER_WRITE_READ 之写操作................................................................. 163
    7.3.2 BINDER_WRITE_READ 之从Binder 读出数据............................................. 164
    7.3.3 struct binder_transaction_data:收发数据包结构............................................... 165
    小结............................................................................................................................... ... 167
    习题............................................................................................................................... ... 167
    4
    Android 系统软件开发(底层)
    第8 章 Android HAL 硬件抽象层.........................................................................168
    8.1 Android HAL 介绍...................................................................................................... 168
    8.1.1 HAL 存在的原因............................................................................................ 169
    8.1.2 Module 架构.................................................................................................... 169
    8.1.3 新的HAL 架构............................................................................................... 170
    8.2 HAL Stub 构架........................................................................................................... 171
    8.2.1 HAL Stub 框架分析......................................................................................... 171
    8.2.2 HAL Stub 注册................................................................................................ 172
    8.2.3 HAL Stub 操作................................................................................................ 174
    8.3 Led HAL 实例............................................................................................................ 177
    8.3.1 Led HAL 框架................................................................................................. 177
    8.3.2 LED HAL 代码架构........................................................................................ 179
    8.3.3 LED Demo 代码分析....................................................................................... 180
    8.3.4 LedService 代码分析....................................................................................... 181
    8.3.5 Led 本地服务代码分析................................................................................... 183
    8.3.6 LED HAL 深入理解........................................................................................ 188
    8.4 实训:基于Android 4.0 平板的LED 灯控制............................................................ 188
    小结............................................................................................................................... .... 192
    习题............................................................................................................................... .... 192
    第9 章 HAL 硬件抽象层进阶Sensor HAL 实例....................................................193
    9.1 Android Sensor 架构................................................................................................... 193
    9.1.1 Android Sensor 框架........................................................................................ 193
    9.1.2 Android Sensor 工作流程................................................................................ 194
    9.2 Sensor HAL 应用程序................................................................................................. 198
    9.2.1 Sensor HAL 应用程序..................................................................................... 198
    9.2.2 Android Manager 机制..................................................................................... 198
    9.2.3 获得Sensor 系统服务..................................................................................... 200
    9.3 SensorManager ............................................................................................................ 203
    9.3.1 本地SensorManager 创建................................................................................ 203
    9.3.2 获得SensorService 服务.................................................................................. 207
    9.3.3 获得SensorService 监听及事件捕获............................................................... 210
    9.3.4 本地封装类SensorDevice ............................................................................... 213
    9.4 Sensor HAL 回顾........................................................................................................ 217
    9.5 实训:SensorDemo 的编译......................................................................................... 218
    小结............................................................................................................................... .... 219
    习题............................................................................................................................... .... 219

  • 本书内容丰富、层次清晰、图文并茂、通俗易懂,训教程中进一步加强实际操作,以便于在教学中达到理论与实践的紧密结合。