第1章 Android简介 1
1.1 Android背景 1
1.1.1 手机操作系统 1
1.1.2 Android的诞生 5
1.1.3 Android发展历程 8
1.2 Android特点 9
1.2.1 Android优点 10
1.2.2 Android缺点 11
1.3 Android发展趋势 12
1.4 思考与练习 12
第2章 Android开发环境搭建 13
2.1 Android开发软硬件要求 13
2.2 开发包及其工具的安装和配置 14
2.2.1 安装JDK和配置Java开发环境 14
2.2.2 Eclipse的安装 16
2.2.3 Android SDK和ADT插件的安装和配置 18
2.3 Android项目创建和运行 22
2.3.1 创建Android项目 22
2.3.2 模拟器创建和Android项目运行 23
2.3.3 Android项目管理 26
2.4 思考与练习 28
第3章 Android开发Java基础 29
3.1 Java语言简介 29
3.2 结构化程序设计 31
3.2.1 数据类型 31
3.2.2 表达式 32
3.2.3 流程控制语句 34
3.2.4 综合案例 37
3.3 面向对象基本概念和应用 38
3.3.1 类与对象 38
3.3.2 继承与封装 43
3.3.3 抽象类和接口 49
3.3.4 包 52
3.3.5 异常处理 54
3.4 思考与练习 58
第4章 Android程序设计基础 62
4.1 Android程序结构 62
4.2 Android程序框架知识 67
4.2.1 Activity生命周期 68
4.2.2 Android组件 73
4.2.3 Intent和IntentFilter 75
4.3 程序调试 81
4.3.1 ADB调试桥 81
4.3.2 Logcat调试 82
4.3.3 Dev Tools 85
4.4 思考与练习 87
第5章 用户界面开发 88
5.1 用户界面简介 88
5.2 事件处理 88
5.3 界面布局 89
5.3.1 线性布局 90
5.3.2 框架布局 92
5.3.3 表格布局 93
5.3.4 相对布局 94
5.3.5 绝对布局 96
5.4 界面控件 97
5.4.1 TextView和EditText 97
5.4.2 Button和ImageButton 100
5.4.3 CheckBox和RadioButton 100
5.4.4 Spinner 104
5.4.5 ListView 106
5.5 对话框 110
5.5.1 AlertDialog创建对话框 110
5.5.2 PopupWindow使用 112
5.5.3 DatePickerDialog、TimePickerDialog使用 114
5.5.4 ProgressDialog进度对话框创建 116
5.6 菜单 119
5.6.1 选项菜单 119
5.6.2 子菜单 121
5.6.3 上下文菜单 123
5.7 思考与练习 125
第6章 Service和广播消息 126
6.1 Service简介 126
6.2 Service实现 128
6.2.1 创建Service 128
6.2.2 启动和绑定Service 129
6.2.3 停止Service 130
6.3 广播消息 136
6.4 思考与练习 140
第7章 Android图形图像和多媒体开发 141
7.1 图形 141
7.1.1 Canvas画布简介 141
7.1.2 Canvas常用绘制方法 141
7.1.3 Canvas绘制的辅助类 146
7.2 图像 150
7.2.1 Drawable和ShapDrawable通用绘图类 150
7.2.2 Bitmap和BitmapFactory图像类 154
7.3 音频和视频 157
7.3.1 Media Player播放音频 157
7.3.2 Media Recorder录音 161
7.3.3 Video View播放视频 164
7.4 OpenGL ES编程 168
7.4.1 OpenGL ES简介 168
7.4.2 视图 169
7.4.3 3D空间中绘图 170
7.4.4 颜色 176
7.5 多媒体综合应用 178
7.6 思考与练习 183
第8章 Android数据存储 184
8.1 数据存储简介 184
8.2 Shared Preferences数据存储 185
8.3 Files数据存储 188
8.4 Android数据库编程 192
8.4.1 SQLite简介 192
8.4.2 SQLite编程 193
8.4.3 SQLiteOpenHelper应用 197
8.5 数据共享 199
8.6 数据存储示例 211
8.7 思考与练习 217
第9章 Android网络与通信编程 218
9.1 Android网络基础 218
9.1.1 标准Java接口 218
9.1.2 Apache接口 219
9.1.3 Android网络接口 220
9.2 HTTP通信 220
9.2.1 HttpURLConnection接口 221
9.2.2 HttpClient接口 227
9.3 Socket通信 230
9.3.1 Socket基础原理 230
9.3.2 Socket示例 234
9.4 WiFi通信 239
9.4.1 WiFi介绍 239
9.4.2 WiFi示例 244
9.5 思考与练习 246
第10章 综合案例一:智能农苑助手 247
10.1 项目分析 247
10.1.1 UI界面规划 247
10.1.2 数据存储设计 248
10.2 系统实现 249
10.2.1 创建项目 249
10.2.2 界面设计 250
10.2.3 天气系统 262
10.2.4 网络通信服务 265
10.2.5 图形图像处理 266
10.2.6 数据存取 268
10.2.7 Service服务 272
10.3 应用程序的发布 273
10.3.1 添加广告 273
10.3.2 生成签名文件 278
10.3.3 使用签名文件 279
10.3.4 发布应用 280
10.4 思考与练习 282
第11章 综合案例二:家庭理财助手 283
11.1 系统功能 283
11.1.1 概述 283
11.1.2 系统功能预览 283
11.2 数据库设计 288
11.2.1 数据库设计基础 288
11.2.2 数据库操作类 291
11.3 主界面设计 292
11.3.1 主界面布局 292
11.3.2 主控类的整体框架 296
11.3.3 主控类方法 299
11.4 辅助工具类 308
11.4.1 数据格式类 308
11.4.2 常量类 309
11.4.3 广告类 310
11.5 数据操作方法 312
11.6 思考与练习 321
附录 322
附录A Android课程及开发资源 322
附录B AndroidManifest文件说明 324
参考文献 328