结合DMA-6410XP实验台,介绍S3C6410ARM硬件结构和接口,采用Android嵌入式操作系统,编写Android界面程序、驱动程序、应用案例。 结合S3C6410ARM硬件接口,基于Android编写界面程序、驱动程序、应用案例。
封面图
目录
- 第2版前言
- 第1版前言
- 软件篇
- 第1章Android体系结构及开发环境 / 2
- 1.1Android体系结构介绍 / 2
- 1.1.1应用程序 / 3
- 1.1.2应用程序框架 / 3
- 1.1.3函数库 / 4
- 1.1.4Linux内核 / 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.1NDK开发环境与安装目录 / 20
- 1.4.2系统和软件需求 / 20
- 1.4.3Windows 平台NDK环境搭建 / 21
- 1.4.4Linux平台NDK环境搭建 / 25
- 第2章Android应用程序开发 / 28
- 2.1第一个HelloEveryone / 28
- 2.1.1创建第一个Android项目HelloEveryone / 28
- 2.1.2Android应用工程组成 / 29
- 2.2Android应用程序组成 / 31
- 2.2.1Activity组件 / 31
- 2.2.2Intent组件 / 36
- 2.2.3 Broadcast Receiver组件 / 39
- 2.2.4Service组件 / 39
- 2.2.5Content 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.1Android的事件处理概述 / 91
- 2.7.2基于监听的事件处理 / 91
- 2.7.3基于回调的事件处理 / 94
- 2.7.4响应的系统设置的事件 / 97
- 2.7.5Handler消息传递机制 / 101
- 第3章SQLite数据库程序开发 / 103
- 3.1SQLite简介 / 103
- 3.1.1SQLite体系结构 / 103
- 3.1.2数据库基础 / 104
- 3.1.3SQLite语句及语法 / 104
- 3.1.4数据库包 / 107
- 3.1.5SQLiteDatabase类 / 109
- 3.2SQLite连接 / 111
- 3.2.1开始构建 / 112
- 3.2.2数据库基本操作 / 114
- 3.2.3数据库与UI连接 / 120
- 3.3数据共享 / 122
- 3.3.1Content 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.1Android 结构介绍/ 152
- 4.2Android 内核结构和设备驱动 / 153
- 4.2.1Android 内核源代码结构 / 153
- 4.2.2Android 常用设备驱动 / 155
- 4.3Android 内核基本配置 / 161
- 4.3.1Android内核中的Kconf ig文件 / 162
- 4.3.2Android内核配置选项 / 162
- 4.4Android 内核编译 / 165
- 4.4.1Android内核中的Makef ile文件 / 166
- 4.4.2解压Android 内核源代码 / 167
- 4.4.3编译Android 内核 / 167
- 4.5DMA-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.7TF卡自动更新kernel和Android系统文件 / 174
- 第5章系统硬件与驱动程序 / 175
- 5.1Android硬件抽象层(HAL) / 175
- 5.1.1内核硬件驱动程序 / 175
- 5.1.2增加C硬件驱动程序/ 184
- 5.1.3接口硬件驱动程序 / 185
- 5.1.4JNI硬件驱动程序 / 189
- 5.2GPIO接口及驱动程序 / 191
- 5.2.1GPIO接口 / 191
- 5.2.2LED接口电路 / 199
- 5.2.3LED驱动程序设计/ 199
- 5.2.4LED程序测试/ 214
- 5.3PWM定时器及驱动程序 / 215
- 5.3.1PWM定时器 / 215
- 5.3.2背光接口电路 / 221
- 5.3.3背光驱动程序设计 / 224
- 5.3.4背光程序测试/ 232
- 5.4ADC接口及驱动程序 / 232
- 5.4.1ADC转换器 / 232
- 5.4.2ADC接口电路 / 239
- 5.4.3ADC驱动程序设计 / 239
- 5.4.4ADC程序测试 / 244
- 5.5键盘接口及驱动程序 / 245
- 5.5.1键盘扫描原理 / 245
- 5.5.2矩阵键盘硬件原理图 / 246
- 5.5.3键盘驱动程序设计 / 250
- 5.5.4键盘程序测试/ 259
- 第6章外设接口与驱动程序 / 261
- 6.1UART串行接口及通信程序 / 261
- 6.1.1UART简介 / 261
- 6.1.2UART接口及操作 / 271
- 6.1.3UART通信程序设计 / 272
- 6.1.4UART程序测试 / 285
- 6.2IIC总线接口及驱动程序 / 286
- 6.2.1IIC总线简介 / 286
- 6.2.2在Linux内核中添加IIC设备 / 291
- 6.2.3IIC驱动程序设计 / 291
- 6.3蓝牙接口及驱动程序 / 302
- 6.3.1蓝牙简介 / 302
- 6.3.2Android系统下的蓝牙架构 / 304
- 6.3.3蓝牙驱动程序设计 / 305
- 6.3.4蓝牙程序测试 / 312
- 6.4Wi-Fi接口及通信程序 / 313
- 6.4.1Wi-Fi介绍 / 313
- 6.4.2Wi-Fi程序设计 / 316
- 6.4.3Wi-Fi程序测试 / 323
- 6.5MediaPlayer播放器程序 / 324
- 6.5.1MediaPlayer简介 / 324
- 6.5.2MediaPlayer的界面与架构 / 325
- 6.5.3MediaPlayer播放器程序设计 / 327
- 6.5.4MediaPlayer程序测试 / 335
- 6.6Camera 拍照及摄影程序 / 336
- 6.6.1Camera简介 / 336
- 6.6.2Android 系统的Camera / 337
- 6.6.3Camera拍照程序设计 / 338
- 6.6.4Camera程序测试 / 343
- 项目篇
- 第7章 Android界面与IO设计工具 / 346
- 7.1Android界面与IO设计工具介绍 / 346
- 7.2Android界面与IO设计工具结构 / 346
- 7.3Android界面与IO设计工具界面设计 / 348
- 7.3.1界面设计 / 348
- 7.3.2界面内容添加 / 348
- 7.4Android界面与IO设计工具功能选择区设计 / 356
- 7.4.1界面设计 / 356
- 7.4.2IO设计 / 369
- 7.4.3 数据库设计 / 371
- 7.5Android界面与IO设计工具辅助功能区设计 / 376
- 7.6Android界面与IO设计工具程序生成区设计 / 377
- 7.6.1Android界面与IO设计工具程序生成区功能介绍 / 377
- 7.6.2Android界面与IO设计工具程序生成区的代码实现 / 378
- 第8章GPS与Google Map定位系统 / 392
- 8.1MyMap服务系统 / 392
- 8.2Android 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.3Android定位服务 / 409
- 8.3.1开启定位服务 / 409
- 8.3.2模拟测试 / 411
- 8.3.3GPS与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