前言 ............................................................................. xv
第1 章 Android 概述 ..................................................... 1
1.1 Android 基本特点 ............................................................................................1
全面 .................................................................................................................1
开源平台 .........................................................................................................2
专为移动设备设计 ..........................................................................................2
1.2 历史 .................................................................................................................3
谷歌的动机 .....................................................................................................3
Android 的兼容性 ............................................................................................4
开放手机联盟 ..................................................................................................4
1.3 Android 的版本 ...............................................................................................5
1.4 Android 的风格 ...............................................................................................7
Android 开源项目 ............................................................................................7
制造商的加载项 ..............................................................................................7
1.5 总结 .................................................................................................................8
第2 章 Java 综述 .......................................................... 9
2.1 注释 ...............................................................................................................12
2.2 数据类型:基本数据类型和对象 ..................................................................13
2.3 修饰符 ...........................................................................................................14
2.4 数组 ...............................................................................................................15
2.5 运算符 ...........................................................................................................16
2.6 控制流语句 ...................................................................................................16
2.7 错误/ 异常处理 .............................................................................................19
2.8 复杂的示例 ...................................................................................................22
2.9 接口和继承 ...................................................................................................26
2.10 集合 .............................................................................................................27
2.11 泛型 .............................................................................................................28
2.12 线程 .............................................................................................................28
2.13 总结 .............................................................................................................29
第3 章 Android 套件 .................................................... 31
3.1 套件概述 .......................................................................................................31
3.2 Linux .............................................................................................................31
Android 不等于Linux ...................................................................................33
3.3 本地层 ...........................................................................................................33
HAL...............................................................................................................34
本地库 ...........................................................................................................34
本地守护进程 ................................................................................................35
本地工具 .......................................................................................................36
3.4 Dalvik ............................................................................................................36
Android 和Java .............................................................................................37
3.5 应用程序框架 ................................................................................................39
3.6 应用程序 .......................................................................................................40
Android 应用程序包(APK) .........................................................................40
应用程序签名 ................................................................................................41
应用程序分发 ................................................................................................41
3.7 总结 ...............................................................................................................42
第4 章 安装和开始使用Android 工具 ........................... 43
4.1 安装Java 开发工具包 ...................................................................................43
4.2 安装Android SDK ........................................................................................45
为工具设置PATH 环境变量 ..........................................................................45
安装Eclipse ..................................................................................................46
Eclipse 工作区 ...............................................................................................46
设置Android 开发工具 .................................................................................46
4.3 Hello World! ..................................................................................................48
创建新项目 ...................................................................................................48
4.4 剖析一个Android 项目 .................................................................................51
Android 的清单文件 ......................................................................................51
字符串资源 ...................................................................................................54
布局XML 代码 .............................................................................................55
4.5 可绘制资源 ...................................................................................................56
R 文件 ...........................................................................................................56
Java 源代码 ...................................................................................................57
4.6 构建项目 .......................................................................................................58
4.7 Android 仿真器 .............................................................................................59
仿真器与真实手机对比 .................................................................................59
4.8 总结 ...............................................................................................................62
第5 章 主要构件 .......................................................... 63
5.1 一个实际的例子 ............................................................................................63
5.2 活动 ...............................................................................................................64
活动的生命周期 ............................................................................................64
5.3 意图 ...............................................................................................................68
5.4 服务 ...............................................................................................................69
5.5 内容提供器 ...................................................................................................70
5.6 广播接收器 ...................................................................................................72
5.7 应用程序上下文 ............................................................................................72
5.8 总结 ...............................................................................................................74
第6 章 Yamba 项目概况 .............................................. 75
6.1 Yamba 应用程序 ............................................................................................75
6.2 设计理念 .......................................................................................................79
6.3 项目设计 .......................................................................................................80
6.4 第1 部分:Android 用户界面 .......................................................................81
6.5 第2 部分:意图、活动条及其他 ..................................................................82
6.6 第3 部分:Android 服务 ..............................................................................82
6.7 第4 部分:内容提供器 .................................................................................83
6.8 第5 部分:列表和适配器 .............................................................................83
6.9 第6 部分:广播接收器 .................................................................................84
6.10 第7 部分:应用程序控件 ...........................................................................84
6.11 第8 部分:联网和Web(HTTP) ................................................................85
6.12 第9 部分:动态壁纸和处理程序 ................................................................85
6.13 总结 .............................................................................................................85
第7 章 Android 的用户界面 ......................................... 87
7.1 创建用户界面的两种方法 .............................................................................87
声明式用户界面 ............................................................................................87
编程式用户界面 ............................................................................................88
各取所长 .......................................................................................................88
7.2 视图和布局 ...................................................................................................88
LinearLayout(线性布局) .............................................................................89
TableLayout(表格布局) ..............................................................................90
FrameLayout(帧布局) .................................................................................91
RelativeLayout(相对布局) ..........................................................................92
7.3 启动Yamba 项目 ...........................................................................................93
7.4 StatusActivity 布局 ........................................................................................97
重要的控件属性 .......................................................................................... 101
字符串资源 ................................................................................................. 103
7.5 StatusActivity Java 类 ................................................................................. 104
释放XML 到Java ....................................................................................... 104
初始化对象 ................................................................................................. 106
处理用户事件 .............................................................................................. 107
7.6 在Android 中记录消息日志 ........................................................................ 108
LogCat ......................................................................................................... 108
编译代码并构建项目:保存文件 ................................................................ 109
添加Twitter API 库 ..................................................................................... 112
更新清单文件以获取Internet 权限 ............................................................. 113
7.7 Android 中的线程机制 ................................................................................ 114
单线程 ......................................................................................................... 114
多线程的执行 .............................................................................................. 115
AsyncTask(异步任务) ............................................................................... 116
7.8 其他UI 事件 ............................................................................................... 119
7.9 备用资源 ..................................................................................................... 124
7.10 总结 ........................................................................................................... 127
第8 章 片段 .............................................................. 129
8.1 片段示例 ..................................................................................................... 129
8.2 片段的生命周期 .......................................................................................... 136
8.3 动态添加片段 .............................................................................................. 137
8.4 总结 ............................................................................................................. 139
第9 章 意图、活动条及其他 ....................................... 141
9.1 首选项 ......................................................................................................... 141
首选项资源 ................................................................................................. 142
SettingsActivity ........................................................................................... 145
更新清单文件 .............................................................................................. 147
9.2 活动条 ......................................................................................................... 148
创建一个空白主活动 ................................................................................... 149
菜单资源 ..................................................................................................... 150
Android 的系统资源 .................................................................................... 152
加载菜单 ..................................................................................................... 153
更新StatusActivity 来处理菜单事件 ........................................................... 154
9.3 共享首选项及更新消息片段 ....................................................................... 155
9.4 文件系统简介 .............................................................................................. 157
访问文件系统 .............................................................................................. 158
文件系统分区 .............................................................................................. 158
系统分区 ..................................................................................................... 158
SD 卡分区 ................................................................................................... 158
用户数据分区 .............................................................................................. 160
文件系统安全 .............................................................................................. 161
9.5 总结 ............................................................................................................. 161
第10 章 服务 ............................................................ 163
10.1 示例服务:RefreshService ........................................................................ 164
创建RefreshService Java 类 ........................................................................ 164
介绍IntentService ....................................................................................... 166
更新清单文件 .............................................................................................. 167
添加菜单项 ................................................................................................. 168
更新选项菜单处理 ...................................................................................... 168
测试服务 ..................................................................................................... 169
10.2 从Yamba 提取数据 ................................................................................... 169
测试服务 ..................................................................................................... 172
10.3 总结 ...............................................................................................172
第11 章 内容提供器 .................................................. 175
11.1 Android 上的数据库 .................................................................................. 175
关于SQLite ................................................................................................. 176
DbHelper ..................................................................................................... 176
数据库模式及其创建 ................................................................................... 177
四个主要操作 .............................................................................................. 177
游标 ............................................................................................................. 178
11.2 消息合同类 ................................................................................................ 179
11.3 更新RefreshService .................................................................................. 181
测试服务 ..................................................................................................... 184
11.4 内容提供器 ................................................................................................ 186
11.5 创建一个内容提供器 ................................................................................. 187
定义URI ..................................................................................................... 187
获取数据类型 .............................................................................................. 189
插入数据 ..................................................................................................... 191
更新数据 ..................................................................................................... 192
删除数据 ..................................................................................................... 193
查询数据 ..................................................................................................... 194
更新Android 清单文件 ............................................................................... 199
更新RefreshService .................................................................................... 200
11.6 总结 ........................................................................................................... 201
第12 章 列表和适配器 ............................................... 203
12.1 主活动 ....................................................................................................... 203
12.2 基本的主活动 ............................................................................................ 203
12.3 时间表片段 ............................................................................................... 205
创建列表项布局 .......................................................................................... 206
12.4 关于适配器 ............................................................................................... 207
12.5 加载数据 ................................................................................................... 208
12.6 通过ViewBinder 定制逻辑 ....................................................................... 211
12.7 详情视图 ................................................................................................... 213
详情片段 ..................................................................................................... 214
详情活动 ..................................................................................................... 216
注册到清单文件 .......................................................................................... 217
主活动,横向视图 ...................................................................................... 217
更新时间表片段 .......................................................................................... 218
12.8 总结 ........................................................................................................... 221
第13 章 广播接收器 .................................................. 223
13.1 关于广播接收器 ........................................................................................ 223
13.2 开机接收器 ............................................................................................... 224
将BootReceiver 注册到Android 清单文件 ................................................. 224
测试开机接收器 .......................................................................................... 225
13.3 警报和系统服务 ........................................................................................ 225
13.4 广播意图 ................................................................................................... 227
通知接收器 ................................................................................................. 230
13.5 总结 ........................................................................................................... 231
第14 章 应用程序控件 ............................................... 233
14.1 通过控件使用内容提供器 ......................................................................... 233
实现YambaWidget 类 ................................................................................. 234
创建XML 布局 ........................................................................................... 236
创建AppWidgetProviderInfo 文件 .............................................................. 238
更新清单文件 .............................................................................................. 238
测试控件 ..................................................................................................... 239
14.2 总结 ........................................................................................................... 239
第15 章 联网和Web 概述 .......................................... 241
15.1 简单的例子 ............................................................................................... 241
15.2 联网基础 ................................................................................................... 242
15.3 HTTP API .................................................................................................. 244
15.4 Apache HTTP 客户端 ................................................................................ 245
15.5 HttpUrlConnection .................................................................................... 248
15.6 使用AsyncTask 和AsyncTaskLoader 在后台联网 .................................... 251
15.7 总结 ........................................................................................................... 251
第16 章 互动与动画:动态壁纸和处理程序 ................ 253
16.1 动态壁纸 ................................................................................................... 253
16.2 处理程序 ................................................................................................... 260
16.3 总结 ........................................................................................................... 262
索引 ........................................................................... 263
· · · · · · (
收起)