标题：Android 2高级编程
基本信息
书名：Android 2高级编程  《Android 2高级编程》图书封面作者： (英)Reto Meier
译者： 王超
出版社：清华大学出版社 
ISBN：9787302241027 
出版日期：2010 年12月 
开本：16开 
页码：509 
版次：2-1 
所属分类： 计算机 > 软件与程序设计 > 移动开发 > Android
内容简介
《android 2高级编程,讲述如何有效利用android 2的功能来改进当前产品或创建新产品。本书是使用android编写移动应用程序的实用精品指南，穿插了一系列示例项目来深入分析android的新功能和技术。大量示例和说明可引导您熟练掌握基础知识，使您不仅能使用当前android 功能编写赏心悦目的移动应用程序，还能灵活快捷地运用未来的android增强功能构建最前沿的解决方案
目录
第1章 android简介 1 
1.1 一些背景信息 2 
1.1.1 不远的过去 2 
1.1.2 未来的前景 3 
1.2 对android的误解 3 
1.3 开放的移动开发平台 4 
1.4 自带的android应用程序 4 
1.5 android sdk的特征 5 
1.5.1 访问硬件(包括摄像头、gps和加速计) 6 
1.5.2 自带的google地图、地理编码和基于位置的服务 6 
1.6 开放手机联盟简介 8 
1.7 运行android的环境 8 
1.8 从事移动开发的原因 9 
第2章 开始入手 17 
2.1 android开发 18 
2.2 面向移动设备的开发 29 
2.2.1 硬件限制带来的设计考虑事项 29 
2.2.2 考虑用户环境 32 
2.2.3 android开发 33 
2.3 to-do list示例 36 
2.4 android开发工具 40 
第3章 创建应用程序和活动 45 
3.1 android应用程序的组成部分 46 
3.2 应用程序清单简介 47 
3.3 使用清单编辑器 52 
3.4 android应用程序生命周期 53 
3.5 理解应用程序的优先级和进程状态 54 
3.6 分离资源 55 
3.6.1 创建资源 55 
3.6.2 使用资源 62 
3.6.3 to-do list资源示例 65 
3.6.4 为不同的语言和硬件创建资源 66 
3.6.5 运行时配置更改 67 
3.7 application类简介 69 
第4章 创建用户界面 79 
4.1 android ui基本设计 80 
4.2 视图简介 80 
4.2.1 使用视图创建活动的用户界面 81 
4.2.2 android widget工具箱 82 
4.3 布局简介 83 
4.3.1 使用布局 83 
4.3.2 优化布局 85 
4.4 创建新视图 85 
4.4.1 修改现有的视图 86 
4.4.2 创建复合控件 90 
4.4.3 创建定制的视图 93 
4.4.4 使用定制的控件 103 
4.5 drawable资源 104 
4.5.1 形状、颜色和渐变 104 
4.5.2 复合drawable 107 
4.5.3 ninepatch drawable 110 
4.6 分辨率和像素密度无关性 110 
第5章 意图、广播接收器、adapter和internet 131 
5.1 意图简介 132 
5.2 待处理意图简介 155 
5.3 adapter简介 156 
5.2.1 部分本地adapter简介 156 
5.2.2 定制arrayadapter 156 
5.2.3 使用adapter绑定数据 157 
第6章 文件、保存状态和首选项 179 
6.1 保存简单的应用程序数据 180 
6.2 创建并保存首选项 180 
6.3 检索共享首选项 181 
6.4 为地震查看器创建一个设置活动 181 
6.5 首选项活动和首选项框架概述 189 
第7章 数据库和内容提供器 201 
7.1 android数据库简介 201 
7.1.1 sqlite数据库简介 202 
7.1.2 内容提供器简介 202 
7.2 sqlite简介 202 
7.3 游标和内容值 203 
7.4 使用sqlite数据库 203 
7.4.1 使用sqliteopenhelper 206 
7.4.2 在不使用sqlitehelper的情况下打开和创建数据库 207 
7.4.3 android数据库设计注意事项 207 
7.4.4 查询数据库 207 
7.4.5 从cursor中提取结果 208 
7.4.6 添加、更新和删除行 209 
7.4.7 保存to-do list 210 
7.5 创建一个新的内容提供器 216 
7.5.1 提供对数据源的访问 217 
7.5.2 注册提供器 219 
7.6 使用内容提供器 219 
第8章 地图、地理编码和基于位置的服务 237 
8.1 使用基于位置的服务 238 
8.2 配置模拟器来测试基于位置的服务 238 
8.3 更新模拟位置提供器中的位置 238 
8.4 选择一个位置提供器 239 
第9章 后台工作 277 
9.1 服务简介 278 
9.1.1 创建和控制服务 279 
9.1.2 将活动和服务绑定 289 
9.1.3 后台服务的优先级 291 
9.2 使用后台线程 292 
9.2.1 使用asynctask运行异步任务 292 
9.2.2 使用asynctask将earthquake service移动到后台线程 294 
9.2.3 手动创建线程和gui线程同步 295 
9.3 创建一个toast 297 
9.3.1 定制toast 297 
9.3.2 在工作线程中使用toast 299 
9.4 通知简介 299 
第10章 个性化手机屏幕 317 
10.1 主屏幕小组件简介 318 
10.2 创建app widgets 318 
10.2.1 创建小组件布局 319 
10.2.2 定义小组件设置 321 
10.2.3 创建小组件意图接收器并将其添加到应用程序清单中 321 
10.2.4 remote views(远程视图)和app widget manager简介 322 
10.2.5 刷新小组件 327 
10.2.6 创建并使用小组件配置活动 329 
10.3 创建地震小组件 330 
10.4 live folder简介 335 
10.4.1 创建live folder 336 
10.4.2 创建earthquake live folder 338 
10.5 将搜索添加到应用程序以及快速搜索框中 340 
第11章 音频、视频以及摄像头的使用 351 
11.1 播放音频和视频 352 
11.1.1 media player简介 352 
11.1.2 准备音频播放 353 
11.1.3 准备视频播放 354 
11.1.4 控制播放 357 
11.1.5 管理媒体播放输出 358 
11.2 录制音频和视频 358 
11.2.1 使用意图录制视频 358 
11.2.2 使用媒体刻录机 359 
11.3 使用摄像头并拍摄照片 362 
11.3.1 使用意图拍摄照片 362 
11.3.2 控制摄像头并拍摄照片 364 
第12章 电话服务和sms 377 
12.1 电话服务 378 
12.1.1 启动拨号程序以初始化电话呼叫 378 
12.1.2 替换本机拨号程序 378 
12.1.3 访问电话和网络属性以及状态 379 
12.1.4 监视电话状态、电话活动以及数据连接中的变化 382 
12.2 sms和mms简介 386 
12.2.1 在应用程序中使用sms和mms 386 
12.2.2 使用意图和本机客户端从应用程序中发送sms和mms 387 
12.2.3 手动发送sms消息 388 
12.2.4 监听传入的sms消息 391 
第13章 蓝牙、网络和wi-fi 411 
13.1 使用蓝牙 411 
13.1.1 访问本地蓝牙设备适配器 412 
13.1.2 管理蓝牙属性和状态 413 
13.1.3 可发现性和远程设备发现 415 
13.1.4 蓝牙通信 418 
13.1.5 蓝牙数据传输示例 424 
13.2 管理网络连接 433 
13.2.1 connectivity manager(连接管理器)简介 433 
13.2.2 读取用户首选项用于后台数据传输 434 
13.2.3 监视网络详细信息 435 
13.2.4 查找并配置网络首选项以及控制硬件信号 435 
第14章 传感器 441 
14.1 使用传感器和传感器管理器 442 
14.2 解释传感器数值 445 
14.3 使用指南针、加速计和方向传感器 445 
14.3.1 加速计简介 446 
第15章 android高级开发 461 
15.1 android的安全性 462 
15.1.1 linux内核安全 462 
15.1.2 权限简介 462 
15.1.3 声明和实施权限 463 
15.1.4 为广播意图实施权限 464 
15.2 使用wake lock 464 
15.3 android text to speech简介 465 
15.4 使用aidl来支持服务的ipc 467 
15.4.1 实现aidl接口 467 
15.4.2 将类对象作为parcelable传递 468