第1章 Android简介 1
1.1 Android发展概述 1
1.2 配置开发环境 3
1.2.1 安装JDK 3
1.2.2 安装Android Studio 5
1.2.3 安装SDK 5
1.3 本章小结 7
习题 7
第2章 Android项目 8
2.1 第一个应用程序 8
2.1.1 创建Android项目 8
2.1.2 Android项目结构 11
2.1.3 自动构建工具Gradle 13
2.1.4 辅助工具介绍 15
2.2 综合案例:灵客 16
2.2.1 灵客功能需求 16
2.2.2 灵客设计概要 18
2.3 本章小结 29
习题 29
第3章 Android基本原理 31
3.1 Android框架 31
3.1.1 Android体系结构 31
3.1.2 Android运行原理 32
3.2 Android应用程序核心组件 36
3.2.1 Activity介绍 36
3.2.2 Service介绍 37
3.2.3 BroadCastReceiver介绍 38
3.2.4 ContentProvider介绍 38
3.3 本章小结 39
习题 39
第4章 Activity、Fragment以及Intent通信机制 40
4.1 Activity生命周期 40
4.1.1 Activity交互机制 40
4.1.2 Activity状态 40
4.1.3 Activity生命周期的事件回调函数 41
4.2 Fragment 49
4.2.1 Fragment简介 49
4.2.2 Fragment的生命周期 50
4.2.3 Fragment的简单使用 51
4.3 Intent 56
4.3.1 Intent属性 57
4.3.2 Intent解析 59
4.3.3 Activity的跳转 60
4.4 本章小结 63
习题 64
第5章 用户界面设计 65
5.1 View 66
5.1.1 View简介 66
5.1.2 TextView和EditText 66
5.1.3 Button 68
5.1.4 ImageView 69
5.2 Layout 72
5.2.1 LinearLayout 72
5.2.2 RelativeLayout 76
5.2.3 FrameLayout 81
5.2.4 TableLayout 81
5.2.5 AbsoluteLayout 84
5.3 对话框 84
5.3.1 提示对话框 85
5.3.2 单选对话框 86
5.3.3 复选对话框 87
5.3.4 列表对话框 88
5.3.5 进度条对话框 89
5.3.6 日期选择对话框 89
5.3.7 时间选择对话框 90
5.3.8 拖动对话框 91
5.3.9 自定义对话框 92
5.4 菜单 93
5.4.1 上下文菜单 93
5.4.2 选项菜单 95
5.4.3 下拉菜单 96
5.5 Toast 98
5.5.1 常规Toast 98
5.5.2 自定义Toast 99
5.6 Notification 100
5.6.1 常规Notification 100
5.6.2 自定义Notification 102
5.7 列表 105
5.7.1 常用Adapter 105
5.7.2 自定义Adapter 107
5.8 AppWidget 111
5.9 本章小结 115
习题 115
第6章 服务 117
6.1 本地服务 117
6.1.1 两种启动方式 117
6.1.2 生命周期 121
6.2 远程服务 123
6.3 服务小实例 127
6.4 本章小结 133
习题 133
第7章 广播 134
7.1 发送和接收广播 134
7.1.1 发送广播 134
7.1.2 接收广播 135
7.1.3 声明广播 135
7.1.4 广播的生命周期 136
7.1.5 常见广播Action常量 138
7.2 广播小实例 139
7.3 本章小结 140
习题 141
第8章 数据存储和提供器 142
8.1 SharedPreference存储 142
8.2 SQLite存储 147
8.2.1 SQLite简介 147
8.2.2 SQLite使用 147
8.3 ContentProvider存储 155
8.4 文件存储 165
8.5 本章小结 170
习题 171
第9章 Android网络通信编程 172
9.1 网络访问方式 172
9.1.1 HTTP通信 172
9.1.2 Socket通信 177
9.1.3 HTTP连接与Socket连接的区别 178
9.1.4 案例分析 178
9.2 数据解析 183
9.2.1 JSON格式解析 183
9.2.2 SAX方式解析 185
9.2.3 案例分析 191
9.3 获取网络状态 196
9.4 JavaScript与Java交互 197
9.4.1 WebView 197
9.4.2 在WebView中使用JavaScript 199
9.5 本章小结 202
习题 202
第10章 进程与消息处理 203
10.1 进程与线程 203
10.1.1 什么是进程 203
10.1.2 进程模型 203
10.1.3 Android中进程的生命周期 205
10.1.4 Android进程间的通信 206
10.1.5 什么是线程 206
10.1.6 Android的线程模型 206
10.1.7 进程与线程 207
10.1.8 进程与线程的重要性 207
10.2 Handler和AsynTask 207
10.2.1 Handler的基本概念 207
10.2.2 Android消息机制 207
10.2.3 Handler的具体使用场合 209
10.2.4 AsyncTask的介绍 209
10.2.5 AsyncTask的使用 209
10.2.6 为什么AsyncTask要在UI Thread中创建才能使用 210
10.2.7 Handler和AsyncTask 211
10.3 Application 211
10.4 本章小结 213
习题 213
第11章 综合案例灵客详解与部署 214
11.1 客户端 215
11.1.1 代码结构 215
11.1.2 功能模块 221
11.2 服务端 229
11.2.1 服务端功能结构 229
11.2.2 数据解析和控制流程 231
11.3 测试环境搭建 232
11.3.1 服务端测试环境搭建 232
11.3.2 Android Studio发布客户端工程 238
11.4 本章小节 239
习题 240
第12章 Android新技术与应用 241
12.1 热补丁 241
12.1.1 简介 241
12.1.2 HotFixDemo 241
12.2 广告拦截技术 250
12.3 Hybrid技术 253
12.4 手机应用管理技术 257
12.4.1 垃圾清理 258
12.4.2 手机加速 262
12.4.3 安装和卸载 265
12.5 本章小结 267
习题 267
参考文献 268