第1章 Android简介 1
1.1 手机操作系统 1
1.2 Android起源 4
1.2.1 开放手机联盟 4
1.2.2 Android发展史 6
1.3 Android特征 12
1.4 Android体系结构 13
习题 15
第2章 Android开发环境 16
2.1 Eclipse开发环境 16
2.1.1 安装JDK和Eclipse 16
2.1.2 安装Android SDK 20
2.1.3 安装ADT插件 22
2.2 Android Studio开发环境 26
2.3 Android SDK 29
2.3.1 目录结构 29
2.3.2 示例程序 30
2.3.3 开发工具 33
习题 37
第3章 第一个Android程序 38
3.1 Eclipse创建应用程序 38
3.2 Android程序结构 46
3.3 Android Studio创建应用程序 54
3.4 命令行创建应用程序 57
习题 64
第4章 Android生命周期 65
4.1 程序生命周期 65
4.2 Android组件 67
4.3 Activity生命周期 68
4.4 程序调试 76
4.4.1 LogCat 76
4.4.2 DevTools 79
习题 85
第5章 Android用户界面 86
5.1 用户界面基础 86
5.2 界面控件 88
5.2.1 TextView和Edit Text 88
5.2.2 Button和ImageButton 89
5.2.3 CheckBox和RadioButton 92
5.2.4 Spinner 94
5.2.5 ListView 95
5.2.6 TabHost 97
5.3 界面布局 102
5.3.1 线性布局 102
5.3.2 框架布局 107
5.3.3 表格布局 109
5.3.4 相对布局 111
5.3.5 绝对布局 113
5.3.6 网格布局 114
5.4 菜单 117
5.4.1 菜单资源 117
5.4.2 选项菜单 118
5.4.3 子菜单 121
5.4.4 快捷菜单 123
5.5 操作栏与Fragment 125
5.5.1 操作栏 125
5.5.2 Fragment 129
5.5.3 Tab导航栏 133
5.6 界面事件 137
5.6.1 按键事件 137
5.6.2 触摸事件 139
习题 144
第6章 组件通信与广播消息 145
6.1 Intent简介 145
6.1.1 启动Activity 146
6.1.2 获取Activity返回值 149
6.2 Intent过滤器 155
6.3 广播消息 157
习题 160
第7章 后台服务 161
7.1 Service简介 161
7.2 本地服务 162
7.2.1 服务管理 162
7.2.2 使用线程 167
7.2.3 服务绑定 173
7.3 远程服务 178
7.3.1 进程间通信 178
7.3.2 服务创建与调用 178
7.3.3 数据传递 189
习题 194
第8章 数据存储与访问 195
8.1 简单存储 195
8.1.1 SharedPreferences 195
8.1.2 示例 197
8.2 文件存储 200
8.2.1 内部存储 200
8.2.2 外部存储 203
8.2.3 资源文件 206
8.3 数据库存储 209
8.3.1 SQLite数据库 209
8.3.2 手动建库 210
8.3.3 代码建库 214
8.3.4 数据操作 217
8.4 数据共享 222
8.4.1 ContentProvider 222
8.4.2 创建数据提供者 224
8.4.3 使用数据提供者 226
8.4.4 示例 228
习题 239
第9章 位置服务与地图应用 241
9.1 位置服务 241
9.2 Google地图应用 246
9.2.1 申请地图密钥 246
9.2.2 使用Google地图 248
9.2.3 地图上使用覆盖层 251
习题 255
第10章 Widget组件开发 256
10.1 Widget简介 256
10.2 Widget基础 257
10.2.1 设计原则 257
10.2.2 开发步骤 260
10.2.3 调试过程 265
10.3 Widget配置 267
10.4 Widget与服务 269
习题 272
第11章 Android NDK开发 273
11.1 NDK简介 273
11.2 NDK开发环境 274
11.3 NDK文档和示例 275
11.4 NDK初级示例 277
11.5 NDK高级示例 282
习题 288
第12章 综合示例设计与开发 289
12.1 需求分析 289
12.2 程序设计 290
12.2.1 用户界面设计 290
12.2.2 数据库设计 291
12.2.3 程序模块设计 292
12.3 程序开发 293
12.3.1 工程结构 293
12.3.2 数据库适配器 295
12.3.3 短信监听器 299
12.3.4 后台服务 301
12.3.5 用户界面 304
习题 311
附录A Android虚拟设备 312
附录B Android API 315
附录C ADB命令 318
附录D AndroidManifest文件 320