首页>参考读物>计算机科学与技术>综合

Android嵌入式系统程序开发(基于Cortex-A8)第2版
作者 : 胡文 金雪松 陈铭 编著
出版日期 : 2015-08-17
ISBN : 978-7-111-51076-5
定价 : 69.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 460
开本 : 16
原书名 :
原出版社:
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

结合DMA-6410XP实验台,介绍S3C6410ARM硬件结构和接口,采用Android嵌入式操作系统,编写Android界面程序、驱动程序、应用案例。 结合S3C6410ARM硬件接口,基于Android编写界面程序、驱动程序、应用案例。

图书特色

全面详解底层驱动、中间层JNI制作和上层UI接口贯通设计的著作,大量的实验程序,完整的项目实例,快速提高嵌入式硬件与Android的开发能力。

封底
高通公司董事长兼首席执行官保罗·雅格布用“生而移动”来表述扑面而来的移动互联网浪潮。对于嵌入式开发工程师来说,能否在最短的时间里掌握适应未来移动世界的电子开发技能,决定着其未来职业发展方向和自身价值体现。熟悉并掌握ARM体系结构和Android平台的开发技能是两大必备的基础条件,而能够将两者的技术精髓吃透并熟练运用,则是高手中的高手。这是一本具有典型实战色彩的工具书,它以Android应用程序开发作为开篇,进而引入ARM Cortex-A8硬件平台的移植,最后以若干项目开发实例巩固前面的软硬件知识。因此,这是一本能够指导嵌入式开发工程师快速掌握移动开发的有用书籍。
—— 于寅虎 《电子产品世界》杂志社总编

作为基于Linux内核的自由及开放源代码的操作系统,Android系统采用了分层的系统体系结构,这就使得基于Android的开发不仅只是应用层的开发,还会涉及底层系统移植及驱动程序的开发。本书由浅入深地覆盖了从Android应用层到内核驱动开发的核心内容,并基于最新的Cortex-A系列的硬件平台详细阐述。本书有理论更注重实践,是系统学习Android开发的绝佳选择。
—— 季久峰  华清远见教育集团总裁 


本书主要分为三部分,包括软件篇、硬件篇和项目篇。软件篇从Android 体系结构和开发环境搭建,以及Android 应用程序开发等方面构造了一个完整的Android 开发流程;硬件篇重点讲解了S5PV210硬件结构和Android系统移植,详细介绍了底层驱动的封装、中间层JNI的制作,以及上层UI的设计;项目篇提供完整的综合应用项目的程序开发实例,详细介绍了开发过程和原始程序代码,并且安排了丰富的实验内容与实践,让读者深刻理解和掌握嵌入式系统开发的整个过程,了解底层驱动程序驱动硬件的原理和上层应用程序的设计方法。


胡 文 大学计算机系教授,多年从事Windows CE和Android嵌入式系统应用研究,精通单片机系统开发和嵌入式终端开发,所开发的嵌入式组态软件、嵌入式访问数据库软件和嵌入式终端等应用于多个领域。

图书前言

《Android嵌入式系统程序开发(基于Cortex-A8)》一书,自2013年4月由机械工业出版社出版后,分别在2013年和2014年重印两次,在此类专业图书教材中表现相当突出。作者非常感谢购买本书的读者,尤其是那些能够通过网络提出问题讨论并给出建议或指出错误的读者朋友。根据最近几年Android的发展变化、开发平台软件和开发工具的更新等相关资料,以及近几年笔者在学校、公司从事教学与培训中的经验和积累,决定对本书进行升级以适应快速迭代的市场变化。
本书在第1版内容的基础上修改了部分内容,主要内容包括:更新第2章Android应用程序开发内容,增加了界面布局、菜单和事件处理内容;新增第3章数据库应用程序开发,增加本地SQLite数据库应用程序,以及远程数据库访问应用程序;根据读者的建议,修改S5PV210硬件结构与接口驱动程序部分内容,涉及第5章系统硬件及驱动程序,以及第6章外设接口及驱动程序,实现了硬件接口、上层UI界面程序和中间层JNI程序结合的驱动程序;修改了第7章并更换了第9章的实例,使得初学者更容易理解和接受相关知识。
尽管笔者设计和开发过许多实际的应用项目和产品,但考虑到本书读者主要是初学者,通常不可能具备与掌握开发各种实际项目或产品所涉及的相关知识和基础,所以提供完整的综合应用项目的程序开发实例。再版书中的实例源代码放在华章网站上,包括应用程序开发、数据库应用程序开发,系统硬件及驱动程序、外设接口及驱动程序和综合应用项目的程序开发实例等源代码。
本书在编写过程中,得到了许多专家和学者的大力支持,听取了多方面的宝贵意见和建议,在此对他们表示衷心感谢。书中难免存在不足和错误之处,敬请读者批评指正。

编者
2015年4月

上架指导

计算机\硬件

封底文字

本书以嵌入式操作系统Android和Cortex-A8微处理器S5PV210为基础,从Android 体系结构和搭建开发环境,以及Android应用程序开发等方面构造了一个完整的Android 开发流程。介绍了S5PV210硬件结构和Android系统移植,详细讲解了底层驱动的封装,中间层JNI 的制作,上层UI 接口的设计,采用Java开发接口驱动程序。提供完整的综合应用项目的程序开发实例,介绍了功能模块设计和数据库设计,详细讲解了开发过程和原始程序代码。

作者简介

胡文 金雪松 陈铭 编著:暂无简介

图书目录

第2版前言
第1版前言
软件篇
第1章 Android体系结构及开发环境 / 2
1.1 Android体系结构介绍 / 2
1.1.1 应用程序 / 3
1.1.2 应用程序框架 / 3
1.1.3 函数库 / 4
1.1.4 Linux内核 / 4
1.2 搭建Windows下的开发环境 / 5
1.2.1 安装JDK / 5
1.2.2 安装Eclipse / 6
1.2.3 安装ADT / 6
1.2.4 安装SDK / 7
1.2.5 创建Android虚拟设备 / 9
1.3 搭建Linux下的开发环境 / 11
1.3.1 安装JDK / 11
1.3.2 安装Eclipse / 12
1.3.3 安装ADT / 13
1.3.4 安装SDK / 15
1.3.5 创建Android虚拟设备 / 17
1.4 搭建NDK开发环境 / 20
1.4.1 NDK开发环境与安装目录 / 20
1.4.2 系统和软件需求 / 20
1.4.3 Windows 平台NDK环境搭建 / 21
1.4.4 Linux平台NDK环境搭建 / 25
第2章 Android应用程序开发 / 28
2.1 第一个HelloEveryone / 28
2.1.1 创建第一个Android项目HelloEveryone / 28
2.1.2 Android应用工程组成 / 29
2.2 Android应用程序组成 / 31
2.2.1 Activity组件 / 31
2.2.2 Intent组件 / 36
2.2.3 Broadcast Receiver组件 / 39
2.2.4 Service组件 / 39
2.2.5 Content Provider组件 / 39
2.3 使用AndroidManifest文件定义应用程序 / 40
2.3.1 管理应用程序身份 / 42
2.3.2 注册Activity和其他应用程序组件 / 42
2.3.3 使用许可权限 / 44设备和软件 / 45
2.3.5 使用库和Android SDK版本 / 46
2.3.6 定义应用程序的其他配置参数 / 46
2.4 常用Widget控件介绍 / 47
2.4.1 用Widget控件创建Android项目 / 47
2.4.2 按钮 / 48
2.4.3 文字框 / 50
2.4.4 编辑框 / 51
2.4.5 多项选择框 / 52
2.4.6 单项选择框 / 54
2.4.7 下拉列表 / 55
2.4.8 自动完成文本 / 56
2.4.9 日期、时间选择器 / 58
2.4.10 进度条 / 60
2.4.11 拖动条 / 61
2.4.12 图片视图 / 62
2.4.13 基于网格索引的图片浏览器 / 63
2.4.14 选项卡 / 66
2.4.15 列表 / 67
2.4.16 图片按钮 / 69
2.4.17 拖动效果 / 70
2.4.18 对话框实例 / 72
2.5 界面布局 / 75
2.5.1 线性布局 / 75
2.5.2 框架布局 / 77
2.5.3 表格布局 / 78
2.5.4 相对布局 / 80
2.5.5 绝对布局 / 81
2.5.6 网格布局 / 82
2.6 菜单 / 84
2.6.1 菜单资源 / 84
2.6.2 选项菜单 / 85
2.6.3 子菜单 / 87
2.6.4 快捷菜单 / 89
2.7 事件处理 / 91
2.7.1 Android的事件处理概述 / 91
2.7.2 基于监听的事件处理 / 91
2.7.3 基于回调的事件处理 / 94
2.7.4 响应的系统设置的事件 / 97
2.7.5 Handler消息传递机制 / 101
第3章 SQLite数据库程序开发 / 103
3.1 SQLite简介 / 103
3.1.1 SQLite体系结构 / 103
3.1.2 数据库基础 / 104
3.1.3 SQLite语句及语法 / 104
3.1.4 数据库包 / 107
3.1.5 SQLiteDatabase类 / 109
3.2 SQLite连接 / 111
3.2.1 开始构建 / 112
3.2.2 数据库基本操作 / 114
3.2.3 数据库与UI连接 / 120
3.3 数据共享 / 122
3.3.1 Content Provider实现数据共享 / 123
3.3.2 创建Content Provider / 125
3.3.3 使用CRUD基本函数 / 127
3.3.4 注册与使用Content Provider / 130
3.4 基于SQLite数据库的日记账工具 / 135
硬件篇
第4章 Android系统移植 / 152
4.1 Android 结构介绍 / 152
4.2 Android 内核结构和设备驱动 / 153
4.2.1 Android 内核源代码结构 / 153
4.2.2 Android 常用设备驱动 / 155
4.3 Android 内核基本配置 / 161
4.3.1 Android内核中的Kconf ig文件 / 162
4.3.2 Android内核配置选项 / 162
4.4 Android 内核编译 / 165
4.4.1 Android内核中的Makef ile文件 / 166
4.4.2 解压Android 内核源代码 / 167
4.4.3 编译Android 内核 / 167
4.5 DMA-210XP平台Android文件系统烧写 / 168
4.5.1 烧写u-boot到Nand F lash / 168
4.5.2 烧写zImage内核映像文件 / 171
4.5.3 烧写ramdisk-uboot.img映像文件 / 172
4.5.4 烧写Android System.img文件 / 172
4.5.5 烧写Android userdata.img文件 / 173
4.5.6 启动Android系统 / 173
4.5.7 TF卡自动更新kernel和Android系统文件 / 174
第5章 系统硬件与驱动程序 / 175
5.1 Android硬件抽象层(HAL) / 175
5.1.1 内核硬件驱动程序 / 175
5.1.2 增加C硬件驱动程序 / 184
5.1.3 接口硬件驱动程序 / 185
5.1.4 JNI硬件驱动程序 / 189
5.2 GPIO接口及驱动程序 / 191
5.2.1 GPIO接口 / 191
5.2.2 LED接口电路 / 199
5.2.3 LED驱动程序设计 / 199
5.2.4 LED程序测试 / 214
5.3 PWM定时器及驱动程序 / 215
5.3.1 PWM定时器 / 215
5.3.2 背光接口电路 / 221
5.3.3 背光驱动程序设计 / 224
5.3.4 背光程序测试 / 232
5.4 ADC接口及驱动程序 / 232
5.4.1 ADC转换器 / 232
5.4.2 ADC接口电路 / 239
5.4.3 ADC驱动程序设计 / 239
5.4.4 ADC程序测试 / 244
5.5 键盘接口及驱动程序 / 245
5.5.1 键盘扫描原理 / 245
5.5.2 矩阵键盘硬件原理图 / 246
5.5.3 键盘驱动程序设计 / 250
5.5.4 键盘程序测试 / 259
第6章 外设接口与驱动程序 / 261
6.1 UART串行接口及通信程序 / 261
6.1.1 UART简介 / 261
6.1.2 UART接口及操作 / 271
6.1.3 UART通信程序设计 / 272
6.1.4 UART程序测试 / 285
6.2 IIC总线接口及驱动程序 / 286
6.2.1 IIC总线简介 / 286
6.2.2 在Linux内核中添加IIC设备 / 291
6.2.3 IIC驱动程序设计 / 291
6.3 蓝牙接口及驱动程序 / 302
6.3.1 蓝牙简介 / 302
6.3.2 Android系统下的蓝牙架构 / 304
6.3.3 蓝牙驱动程序设计 / 305
6.3.4 蓝牙程序测试 / 312
6.4 Wi-Fi接口及通信程序 / 313
6.4.1 Wi-Fi介绍 / 313
6.4.2 Wi-Fi程序设计 / 316
6.4.3 Wi-Fi程序测试 / 323
6.5 MediaPlayer播放器程序 / 324
6.5.1 MediaPlayer简介 / 324
6.5.2 MediaPlayer的界面与架构 / 325
6.5.3 MediaPlayer播放器程序设计 / 327
6.5.4 MediaPlayer程序测试 / 335
6.6 Camera 拍照及摄影程序 / 336
6.6.1 Camera简介 / 336
6.6.2 Android 系统的Camera / 337
6.6.3 Camera拍照程序设计 / 338
6.6.4 Camera程序测试 / 343
项目篇
第7章 Android界面与IO设计工具 / 346
7.1 Android界面与IO设计工具介绍 / 346
7.2 Android界面与IO设计工具结构 / 346
7.3 Android界面与IO设计工具界面设计 / 348
7.3.1 界面设计 / 348
7.3.2 界面内容添加 / 348
7.4 Android界面与IO设计工具功能选择区设计 / 356
7.4.1 界面设计 / 356
7.4.2 IO设计 / 369
7.4.3 数据库设计 / 371
7.5 Android界面与IO设计工具辅助功能区设计 / 376
7.6 Android界面与IO设计工具程序生成区设计 / 377
7.6.1 Android界面与IO设计工具程序生成区功能介绍 / 377
7.6.2 Android界面与IO设计工具程序生成区的代码实现 / 378
第8章 GPS与Google Map定位系统 / 392
8.1 MyMap服务系统 / 392
8.2 Android Google Map / 393
8.2.1 申请Google Map Android API Key / 393
8.2.2 编写Google Map框架程序 / 394
8.2.3 控制地图 / 396
8.2.4 地图的显示模式 / 398
8.2.5 地图的图层 / 401
8.2.6 查询与定位 / 403
8.3 Android定位服务 / 409
8.3.1 开启定位服务 / 409
8.3.2 模拟测试 / 411
8.3.3 GPS与Google Map定位 / 413
8.4 案例重构 / 414
8.4.1 地图的显示模式 / 414
8.4.2 重构“查询方法” / 417
第9章 Android图书管理系统 / 420
9.1 系统功能设计 / 420
9.2 系统开发环境 / 420
9.3 数据库设计 / 421
9.4 图书管理系统学生端开发 / 424
9.4.1 登录界面 / 424
9.4.2 查询界面 / 425
9.4.3 学生预约管理 / 431
9.4.4 挂失管理 / 433
9.5 图书管理系统管理端开发 / 434
9.5.1 登录界面 / 434
9.5.2 图书管理 / 438
9.5.3 学生信息管理 / 439
9.5.4 管理员管理 / 441
9.5.5 借阅预约图书 / 443
9.5.6 缴纳罚款 / 446
参考文献 / 450

教学资源推荐
作者: 吴跃 主编 李树全 尚明生 陈端兵 参编
作者: 黄建文 章鸣嬛 编著 孙德文 主审
作者: 刘艺 王春生 等编著
参考读物推荐
作者: 吴海燕 吴琪菊 等编著
作者: 游小明 罗光春 编著