第1章 Android开发基础 1
1.1 下载开发软件 2
1.1.1 Android SDK 2
1.1.2 Eclipse 2
1.1.3 Java 2
1.2 安装软件 3
1.2.1 安装Eclipse 3
1.2.2 安装Android SDK 3
1.2.3 下载文件包 4
1.3 配置Eclise 5
1.3.1 给Eclipse添加Android插件 6
1.3.2 定位SDK 7
1.3.3 创建一个模拟器 8
1.3.4 操作Android手机 9
1.4 创建新的Android项目 11
1.5 运行一个新项目 12
1.6 给模拟器纠错 13
1.7 小结 14
第2章 Android应用基础 16
2.1 文件 18
2.2 活动类 19
2.2.1 看着活动类发挥作用 19
2.2.2 实现自己的活动类 20
2.2.3 活动的生命和重要时刻 25
2.2.4 加分题——数据保存方法 28
2.3 意图类 30
2.3.1 清单注册 30
2.3.2 添加一个意图 31
2.3.3 在运行时刻监听意图 33
2.3.4 移动自己的数据 36
2.4 应用类 38
2.4.1 默认的应用声明 38
2.4.2 自定义应用 38
2.4.3 访问应用 40
2.5 小结 40
第3章 创建用户界面 42
3.1 视图类 44
3.1.1 创建一个视图 44
3.1.2 在运行时刻改变用户界面 47
3.1.3 处理常见任务 50
3.1.4 创建自定义视图 53
3.2 资源管理 57
3.2.1 资源文件夹概述 57
3.2.2 values目录 59
3.2.3 布局目录 60
3.2.4 drawable目录 61
3.3 布局管理 61
3.3.1 ViewGroup 62
3.3.2 AbsoluteLayout 63
3.3.3 LinearLayout 66
3.3.4 RelativeLayout 72
3.4 小结 77
第4章 获取数据 78
4.1 主线程 80
4.1.1 获取数据 80
4.1.2 看门狗 81
4.1.3 应该避免的操作 82
4.1.4 什么时候在主线程上 82
4.2 从主线程下来 82
4.2.1 回到主线程 83
4.2.2 一定有好方法 84
4.3 AsyncTask 84
4.3.1 发挥作用 86
4.3.2 重要的警告 88
4.4 IntentService 89
4.4.1 声明服务 89
4.4.2 获取图片 90
4.4.3 检查工作 94
4.5 小结 95
第5章 适配器、列表视图和列表 96
5.1 列表的两个部分 98
5.1.1 列表视图(ListView) 98
5.1.2 适配器(Adapter) 98
5.2 主菜单 98
5.2.1 创建菜单数据 99
5.2.2 创建ListActivity 99
5.2.3 为ListActivity定义布局 100
5.2.4 创建菜单列表项 101
5.2.5 创建和填充ArrayAdapter 102
5.2.6 响应单击事件 103
5.3 复杂的ListView 104
5.3.1 一千英尺的视图 104
5.3.2 创建主布局视图 104
5.3.3 创建ListActivity 105
5.3.4 获取Twitter数据 105
5.3.5 创建自定义的Adapter 107
5.3.6 构建List View 108
5.4 对象之间的交互 111
5.5 小结 111
第6章 服务的方式 114
6.1 什么是服务 116
6.1.1 服务的生命周期 116
6.1.2 让服务持续运行 117
6.1.3 关闭服务 117
6.2 通信 117
6.2.1 基于意图的通信 118
6.2.2 Binder服务通信 125
6.3 小结 129
第7章 多设备、单应用 130
7.1 揭开res/目录的秘密 132
7.1.1 布局目录 132
7.1.2 除了水平模式外还能做什么 137
7.1.3 全屏定义 138
7.2 将对应用的访问限制于工作的设备 139
7.2.1 <uses>标记 140
7.2.2 SDK版本号 140
7.3 处理早期版本的Android系统中的代码 141
7.3.1 SharedPreferences及其应用 141
7.3.2 用反射机制解除麻烦 142
7.3.3 时刻监控API层次 143
7.4 小结 143
第8章 电影和音乐 144
8.1 电影 146
8.1.1 添加VideoView 146
8.1.2 设置Video View 147
8.1.3 让媒体播放起来 147
8.1.4 加载媒体并播放 149
8.1.5 清理 150
8.1.6 其余部分都由你自己完成 150
8.2 音乐 151
8.2.1 媒体播放器和状态 151
8.2.2 播放声音 152
8.2.3 清理 153
8.2.4 真的很简单 153
8.3 长时间播放音乐 153
8.3.1 绑定到音乐服务 154
8.3.2 找到最新的音频 154
8.3.3 播放服务中的音频 156
8.3.4 清理 158
8.3.5 中断 158
8.4 小结 159
第9章 确定位置和使用地图 160
9.1 位置的基本知识 162
9.1.1 添加位置许可 162
9.1.2 注意你的请求 162
9.1.3 寻找好的厂商 162
9.1.4 获取商品 163
9.1.5 神秘的快捷方法 164
9.1.6 完成 164
9.2 现实地图 164
9.2.1 获取库 164
9.2.2 添加到清单文件 165
9.2.3 创建MapActivity 166
9.2 4创建MapView 166
9.2.5 应用于实际 167
9.3 小结 169
第10章 平板、片段和操作条 170
10.1 片段 172
10.1.1 片段的生命周期 172
10.1.2 创建一个片段 173
10.1.3 显示片段 174
10.1.4 提供向后兼容 177
10.2 操作条 178
10.2.1 显示操作条 179
10.2.2 给操作条添加元素 179
10.3 小结 183
第11章 发布应用 184
11.1 程序打包和版本标识 186
11.1.1 禁止调试 186
11.1.2 命名程序包 186
11.1.3 定义版本 187
11.1.4 设置最小SDK值 187
11.2 程序打包和签名 188
11.2.1 输出一个签名的系统版本 188
11.2.2 备份密钥库文件 189
11.3 提交系统版本 190
11.3.1 查看系统崩溃报告并解决 191
11.3.2 经常更新 191
11.4 小结 191