第1章 绪论 1
1.1 Android介绍 1
1.2 Android版本历史 2
1.3 Android系统特点 3
第2章 Android开发入门 6
2.1开发工具 6
2.2开发工具的安装及配置 6
2.2.1安装和配置JDK 6
2.2.2安装和配置Eclipse 8
2.2.3安装和配置Android SDK 9
2.2.4安装ADT 10
2.2.5创建AVD 12
2.3 HelloWorld 14
2.3.1创建HelloWorld工程项目 14
2.3.2在模拟器上运行HelloWorld 18
2.4本章小结 19
第3章 UI 20
3.1实例——5种UI布局类型 20
3.2 Android UI布局 22
3.2.1线性布局(LinearLayout) 23
3.2.2帧布局(FrameLayout) 26
3.2.3相对布局(RelativeLayout) 27
3.2.4表格布局(TableLayout) 29
3.2.5绝对布局(AbsoluteLayout) 30
3.2.6常见问题 31
3.3 Android UI控件 32
3.3.1 UI事件捕获与处理 32
3.3.2文本框(TextView)、按钮(Button)和可编辑文本(EditText) 33
3.3.3复复选框(CheckBox)与单选组框(RadioGroup) 35
3.3.4下拉列表(Spinner) 37
3.3.5自动补全文本框(AutoCompleteTextView) 39
3.3.6进度条(ProgressBar) 40
3.3.7列表(ListView) 42
3.3.8窗体设置(Window) 48
3.3.9其他UI控件概览 50
3.4菜单(Menu) 54
3.5对话框(Dialog) 60
3.6本章小结 66
第4章 Android开发框架 67
4.1 Android系统架构 67
4.2 Android应用程序组成 70
4.3 Activity的生命周期 72
4.4 Android的项目架构 74
4.5 AndroidManifest.xml文件解析 75
4.6 XML简介 77
4.7 Android的生命周期 78
4.8本章小结 79
第5章 Service应用 80
5.1什么是Service 80
5.2跨进程调用 81
5.3 Service实例——音乐播放器 82
5.3.1使用startService启动服务 83
5.3.2使用Receiver方式启动服务 88
5.3.3使用bindService方式启动服务 89
5.3.4通过AIDL方式使用远程服务 92
5.4本章小结 96
第6章 Android数据存储 97
6.1 Android数据基本存储方式 97
6.1.1 SharedPreferences 97
6.1.2 Files 100
6.1.3 ContentProvider 103
6.2 Android数据库编程——SQLite 105
6.2.1 SQLite简介 105
6.2.2 SQLite示例 106
6.3本章小结 113
第7章 多媒体开发 114
7.1音频 114
7.1.1播放音频 114
7.1.2录制音频 115
7.2视频 116
7.2.1播放视频 117
7.2.2录制视频 117
7.3使用Path类绘制二维图形 120
7.4使用OpenGL ES绘制三维图形 124
7.4.1 OpenGL发展历史 125
7.4.2 OpenGL ES简介 125
7.4.3 Android OpenGL ES 126
7.4.4示例 126
7.5本章小结 131
第8章 Android网络通信 132
8.1引言 132
8.2 Android网络通信基础 132
8.2.1 Android支持的网络通信模式 132
8.2.2 Android提供的网络接口 134
8.3使用HttpClient和HttpURLConnection接口 134
8.3.1 HTTP简介 134
8.3.2使用Http Client接口通信示例 135
8.3.3使用Http UrlConnection接口通信示例 138
8.4 Android的WiFi开发入门 141
8.4.1为Wi-Fi Direct Intent创建广播接收器 143
8.4.2创建Wi-Fi Direct应用 144
8.5 Android蓝牙开发入门 150
8.6实例:蓝牙聊天 158
8.6.1本机作为服务端参与连接的建立 158
8.6.2本机作为客户端参与连接的建立 160
8.6.3通信聊天 161
8.7本章小结 162
8.8本章习题 163
第9章 传感器访问 164
9.1传感器API介绍 164
9.2传感器相关的坐标系 165
9.2.1世界坐标系 165
9.2.2旋转坐标系 165
9.3获取设备上传感器种类 166
9.3.1功能实现 167
9.3.2获取的传感器列表 168
9.4利用传感器实现指南针功能 168
9.4.1功能分析及实现 168
9.4.2指南针实现效果 171
9.4.3在模拟器上开发传感器应用 172
9.5利用传感器实现计步器功能 178
9.5.1计步器介绍 178
9.5.2计步器所需传感器分析 179
9.5.3计步器功能实现 180
9.5.4计步器实现效果 185
9.5.5示例说明 185
第10章 Google Map API 186
10.1在Google Map上使用GPS定位 186
10.1.1 Google Play services的安装 186
10.1.2 Google Play services开发文档 187
10.1.3配置开发环境 187
10.1.4获取Android Maps API Key 188
10.1.5把API Key加入应用程序 191
10.1.6添加Google Play services类库的引用 193
10.1.7尝试运行工程 195
10.1.8为示例添加GPS位置获取功能 195
10.2在MainActivity上标记位置 198
10.2.1标记效果 199
10.2.2显示地标 199
10.2.3弹出式气泡 201
10.3在地图上测两点距离 210
10.3.1测距功能说明 211
10.3.2实现测距线程 213
10.3.3选点 216
10.3.4添加Handler处理 219
10.4在MapView上绘制轨迹 219
10.4.1轨迹绘制说明 220
10.4.2使用Google Earth生成kml文件 221
第11章 Android浏览器扩展 230
11.1浏览器插件简介 230
11.2 NPAPI简介 231
11.3 Android中的浏览器插件开发分析 232
11.3.1 BrowserPlugin结构 232
11.3.2 BrowserPlugin中的NPP APIs 233
11.3.3 BrowserPlugin中的ANPInterface 259
11.3.4 BrowserPlugin的工作流程 259
11.4编译和运行浏览器插件 260
参考文献 264