描述
开 本: 16开纸 张: 胶版纸包 装: 平装是否套装: 否国际标准书号ISBN: 9787113207182
内容简介
本书是一本介绍Android 系统核心及系统级应用的技术用书,主要目标是让读者更加深入地理解Android 系统,让开发过程更高效。目前企业对Android 人才的需求主要在应用开发和底层系统开发两个方面,企业*紧缺的是兼具两者能力的系统开发工程师。本书共分为9 章,先介绍Android 底层的架构和Android 的启动过程;然后介绍Android 的系统编译和移植;接下来介绍Android的JNI和HAL层,这是Android系统级应用开发的核心内容;*后通过两个实例Led HAL和Sensor HAL对代码进行详细分析,让读者更加深入地理解Android底层系统开发。本书适合作为高职高专院校嵌入式技术与应用专业、移动互联应用技术专业的教材,也可供中等职业技术学校使用。
目 录
第1章 概述
1.1 Android操作系统介绍
1.2 Android软件架构介绍
1.3 Android子系统介绍
1.4 Android应用程序开发过程
小结
习题
第2章 Android源码开发环境搭建
2.1 搭建主机虚拟机环境
2.1.1 vMwareWorkstation介绍
2.1.2 安装vMwareWorkstation虚拟机软件
2.1.3 安装ubuntu操作系统
2.1.4 VMware网络配置
2.1.5 vMware与主机数据共享
2.1.6 VMware添加新硬件
2.2 搭建Linux编译环境
2.2.1 建立ubuntu编译环境
2.2.2 JDK安装
2.2.3 安装Android编译工具
2.2.4 下载Android源码
2.2.5 下载Linux内核源码
2.3 编译Android源码
2.3.1 Android源码目录结构
2.3.2 编译Android
2.3.3 编译nux内核
2.4 搭建AndroidSDK开发环境
2.4.1 下载、安装Eclipse
2.4.2 安装ADT插件
2.4.3 下载、配置AndroidSDK工具包
2.4.4 下载AndroidSDK平台
2.4.5 通过AndroidSDK.Manager创建模拟器
2.4.6 应用程序Framework源码级调试
2.5 定制Android模拟器
2.6 实训:Android4.0开发环境搭建及源码编译
小结
习题
第3章 Android系统的启动
3.1 Androidinit进程启动
3.2 Android本地守护进程
3.2.1 ueventd进程
3.2.2 adbd进程
3.2.3 servicemanager进程
3.2.4 vold进程
3.2.5 ril—daemon进程
3.2.6 Sillfaceflinger进程
3.3 zygote守护进程与system—setver进程
3.3.1 zygote守护进程的启动
3.3.2 zygoteInit类的功能与system—sei.ver进程的创建
3.3.3 system—serve进程的运行
3.3.4 HOME桌面的启动
3.4 实训:通过Init肌脚本开机启动Android应用程序
小结
习题
第4章 Android编译系统与定制Android平台系统
4.1 Andloid编译系统
4.1.1 Android编译系统介绍
4.1.2 Android.mk文件
4.2 实训:编译HelloWorld应用程序
4.3 定制Android平台系统
4.3.1 添加新产品编译项
4.3.2 定制产品的意义及定制要点
4.4 实训:定制开机界面
4.5 实训:定制开机文字
4.6 实训:定制系统开机动画
小结
习题
第5章 JNI机制
5.1 JM概述
5.2 JNI原理
5.3 JNI中的数据传递
5.3.1 JNI基本类型
5.3.2 JNI引用类型
5.4.Java访问本地方法
5.5 JNI访问Java成员
5.5.1 取得Java属性ID和方法ID
5.5.2 JNI类型签名
5.5.3 JNI操作Java属性和方法
5.5.4 在本地代码中创建Java对象
5.5.5 Java数组在本地代码中的处理
5.6 局部引用与全局引用
5.6.1 局部引用
5.6.2 全局引用
5.6.3 在Java环境中保存JNI对象
5.7 本地方法的注册
5.7.1 JNI—OnLoad方法
5.7.2 RegisterNatives方法
5.8 实训:JNI调用实训
小结
习题
第6章 Android的对象管理
6.1 智能指针
6.2 轻量级指针
6.3 RefBase类
6.4 弱引用指针wp
6.5 智能指针的示例
小结
习题
第7章 Binder通信
7.1 Android进程空间与Binder机制
7.1.1 Android的Binder机制
7.1.2 面向对象的:BinderIPC
7.2 Binder框架分析
7.2.1 BindelDriver
7.2.2 OpenBinderDriver
7.2.3 SeiviceManager与实名Binder
7.3 AndroidBinder协议
7.3.1 BINDER—wRITE—READ之写操作
7.3.2 BINDER—wRITE—READ之从Binder.读出数据
7.3.3 structbinder—transaction—data收发数据包结构
小结
习题
第8章 Android HAL硬件抽象层
8.1 AndroidHAL介绍
8.1.1 HAL存在的原因
8.1.2 Module架构
8.1.3 新的HAL架构
8.2 HALStub构架
8.2.1 HALStub框架分析
8.2.2 HALStub注册
8.2.3 HALstub操作
8.3 LedHAL实例
8.3.1 LedHAL框架
8.3.2 LEDHAL代码架构
8.3.3 LEDDemo代码分析
8.3.4 LedService代码分析
8.3.5 Led本地服务代码分析
8.3.6 L,EDHAL深入理解
8.4 实训:基于Android4.0平板的LED灯控制
小结
习题
第9章 HAL硬件抽象层进阶Sensor HAL实例
9.1 AndroidSensor架构
9.1.1 AndroidSensor框架
9.1.2 AndroidSensor工作流程
9.2 SensorHAL应用程序
9.2.1 SensorHAL应用程序
9.2.2 AndroidManager机制
9.2.3 获得Sensor系统服务
9.3 SensorManager
9.3.1 本地SensorManagm.创建
9.3.2 获得SensorSmvice服务
9.3.3 获得SensorService监听及事件捕获
9.3.4 本地封装类Sensm—Device
9.4 SensorHAL回顾
9.5 实训:SensorDemo的编译
小结
习题
1.1 Android操作系统介绍
1.2 Android软件架构介绍
1.3 Android子系统介绍
1.4 Android应用程序开发过程
小结
习题
第2章 Android源码开发环境搭建
2.1 搭建主机虚拟机环境
2.1.1 vMwareWorkstation介绍
2.1.2 安装vMwareWorkstation虚拟机软件
2.1.3 安装ubuntu操作系统
2.1.4 VMware网络配置
2.1.5 vMware与主机数据共享
2.1.6 VMware添加新硬件
2.2 搭建Linux编译环境
2.2.1 建立ubuntu编译环境
2.2.2 JDK安装
2.2.3 安装Android编译工具
2.2.4 下载Android源码
2.2.5 下载Linux内核源码
2.3 编译Android源码
2.3.1 Android源码目录结构
2.3.2 编译Android
2.3.3 编译nux内核
2.4 搭建AndroidSDK开发环境
2.4.1 下载、安装Eclipse
2.4.2 安装ADT插件
2.4.3 下载、配置AndroidSDK工具包
2.4.4 下载AndroidSDK平台
2.4.5 通过AndroidSDK.Manager创建模拟器
2.4.6 应用程序Framework源码级调试
2.5 定制Android模拟器
2.6 实训:Android4.0开发环境搭建及源码编译
小结
习题
第3章 Android系统的启动
3.1 Androidinit进程启动
3.2 Android本地守护进程
3.2.1 ueventd进程
3.2.2 adbd进程
3.2.3 servicemanager进程
3.2.4 vold进程
3.2.5 ril—daemon进程
3.2.6 Sillfaceflinger进程
3.3 zygote守护进程与system—setver进程
3.3.1 zygote守护进程的启动
3.3.2 zygoteInit类的功能与system—sei.ver进程的创建
3.3.3 system—serve进程的运行
3.3.4 HOME桌面的启动
3.4 实训:通过Init肌脚本开机启动Android应用程序
小结
习题
第4章 Android编译系统与定制Android平台系统
4.1 Andloid编译系统
4.1.1 Android编译系统介绍
4.1.2 Android.mk文件
4.2 实训:编译HelloWorld应用程序
4.3 定制Android平台系统
4.3.1 添加新产品编译项
4.3.2 定制产品的意义及定制要点
4.4 实训:定制开机界面
4.5 实训:定制开机文字
4.6 实训:定制系统开机动画
小结
习题
第5章 JNI机制
5.1 JM概述
5.2 JNI原理
5.3 JNI中的数据传递
5.3.1 JNI基本类型
5.3.2 JNI引用类型
5.4.Java访问本地方法
5.5 JNI访问Java成员
5.5.1 取得Java属性ID和方法ID
5.5.2 JNI类型签名
5.5.3 JNI操作Java属性和方法
5.5.4 在本地代码中创建Java对象
5.5.5 Java数组在本地代码中的处理
5.6 局部引用与全局引用
5.6.1 局部引用
5.6.2 全局引用
5.6.3 在Java环境中保存JNI对象
5.7 本地方法的注册
5.7.1 JNI—OnLoad方法
5.7.2 RegisterNatives方法
5.8 实训:JNI调用实训
小结
习题
第6章 Android的对象管理
6.1 智能指针
6.2 轻量级指针
6.3 RefBase类
6.4 弱引用指针wp
6.5 智能指针的示例
小结
习题
第7章 Binder通信
7.1 Android进程空间与Binder机制
7.1.1 Android的Binder机制
7.1.2 面向对象的:BinderIPC
7.2 Binder框架分析
7.2.1 BindelDriver
7.2.2 OpenBinderDriver
7.2.3 SeiviceManager与实名Binder
7.3 AndroidBinder协议
7.3.1 BINDER—wRITE—READ之写操作
7.3.2 BINDER—wRITE—READ之从Binder.读出数据
7.3.3 structbinder—transaction—data收发数据包结构
小结
习题
第8章 Android HAL硬件抽象层
8.1 AndroidHAL介绍
8.1.1 HAL存在的原因
8.1.2 Module架构
8.1.3 新的HAL架构
8.2 HALStub构架
8.2.1 HALStub框架分析
8.2.2 HALStub注册
8.2.3 HALstub操作
8.3 LedHAL实例
8.3.1 LedHAL框架
8.3.2 LEDHAL代码架构
8.3.3 LEDDemo代码分析
8.3.4 LedService代码分析
8.3.5 Led本地服务代码分析
8.3.6 L,EDHAL深入理解
8.4 实训:基于Android4.0平板的LED灯控制
小结
习题
第9章 HAL硬件抽象层进阶Sensor HAL实例
9.1 AndroidSensor架构
9.1.1 AndroidSensor框架
9.1.2 AndroidSensor工作流程
9.2 SensorHAL应用程序
9.2.1 SensorHAL应用程序
9.2.2 AndroidManager机制
9.2.3 获得Sensor系统服务
9.3 SensorManager
9.3.1 本地SensorManagm.创建
9.3.2 获得SensorSmvice服务
9.3.3 获得SensorService监听及事件捕获
9.3.4 本地封装类Sensm—Device
9.4 SensorHAL回顾
9.5 实训:SensorDemo的编译
小结
习题
前 言
Android 是Google 公司于2007 年11 月发布的一个基于Linux 内核的开源嵌入式操作系统。经过几年的发展,市场份额迅速壮大,现已跃居全球**。与此同时,随着行业的发展,Android研发工程师日益成为IT市场的紧缺人才。目前国内的Android开发主要以应用开发为主,主要分为两类:(1)企业开发应用;(2)开发通用应用以及游戏开发。**类开发者一般身处规模较大的公司,这些公司主要为自有品牌或其他品牌设计手机/平板电脑的总体方案。除了根据需求对系统进行定制外,更多的工作在于为这些系统编写定制的应用。第二类开发者,一般处于创业型公司或者是独立开发者。
近几年各大专院校纷纷开设移动互联应用技术专业,但是在专业教学过程中都面临教材难觅、教材内容更新滞后等问题。虽然目前市场上的Android 开发书籍比较多,但几乎都是针对Android 应用层的开发。而作为一名合格的Android开发工程师,还要了解Android的工作机制,这就涉及Android的架构;再往下,就是操作系统层级了,这里应该对Linux 操作系统进行学习,熟悉其内核和运行原理,熟悉ARM 体系架构及常用指令,并熟悉Android 的JNI 和HAL,掌握其移植方法。针对以上需求我们编写了本教材。
本书从Android底层原理开始讲起,结合真实的案例向读者详细介绍Android内核、Android 系统移植、Android JNI 调用和HAL 框架开发流程。全书分为9章,依次讲解Android 源代码的下载、编译,Android 的启动流程、HAL 层深入分析等,重点介绍了与Android 开发相关的底层知识,并对Android 源代码进行了剖析。
本书由湖北工业职业技术学院信息与智能工程系夏德洲、张明担任主编并统稿,朱波任副主编。感谢唐攀无私地提供了很多帮助,Google公司大学合作部的朱爱民经理也对本书提供了技术和资金上的支持,在此表示衷心的感谢。由于时间仓促,本书可能存在一些不妥之处,请读者见谅并欢迎读者批评指正。
编 者
2015年8月
近几年各大专院校纷纷开设移动互联应用技术专业,但是在专业教学过程中都面临教材难觅、教材内容更新滞后等问题。虽然目前市场上的Android 开发书籍比较多,但几乎都是针对Android 应用层的开发。而作为一名合格的Android开发工程师,还要了解Android的工作机制,这就涉及Android的架构;再往下,就是操作系统层级了,这里应该对Linux 操作系统进行学习,熟悉其内核和运行原理,熟悉ARM 体系架构及常用指令,并熟悉Android 的JNI 和HAL,掌握其移植方法。针对以上需求我们编写了本教材。
本书从Android底层原理开始讲起,结合真实的案例向读者详细介绍Android内核、Android 系统移植、Android JNI 调用和HAL 框架开发流程。全书分为9章,依次讲解Android 源代码的下载、编译,Android 的启动流程、HAL 层深入分析等,重点介绍了与Android 开发相关的底层知识,并对Android 源代码进行了剖析。
本书由湖北工业职业技术学院信息与智能工程系夏德洲、张明担任主编并统稿,朱波任副主编。感谢唐攀无私地提供了很多帮助,Google公司大学合作部的朱爱民经理也对本书提供了技术和资金上的支持,在此表示衷心的感谢。由于时间仓促,本书可能存在一些不妥之处,请读者见谅并欢迎读者批评指正。
编 者
2015年8月
评论
还没有评论。